Index: distrib/sets/lists/base/mi =================================================================== RCS file: /cvsroot/src/distrib/sets/lists/base/mi,v retrieving revision 1.785 diff -u -r1.785 mi --- distrib/sets/lists/base/mi 11 Dec 2008 11:14:36 -0000 1.785 +++ distrib/sets/lists/base/mi 14 Dec 2008 18:55:44 -0000 @@ -2583,22 +2583,57 @@ ./usr/share/locale base-locale-share ./usr/share/locale/af_ZA.ISO8859-1 base-locale-af ./usr/share/locale/af_ZA.ISO8859-1/LC_CTYPE base-locale-af nls +./usr/share/locale/af_ZA.ISO8859-1/LC_MESSAGES base-locale-af +./usr/share/locale/af_ZA.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-af nls +./usr/share/locale/af_ZA.ISO8859-1/LC_MONETARY base-locale-af nls +./usr/share/locale/af_ZA.ISO8859-1/LC_NUMERIC base-locale-af nls +./usr/share/locale/af_ZA.ISO8859-1/LC_TIME base-locale-af nls ./usr/share/locale/af_ZA.ISO8859-15 base-locale-af ./usr/share/locale/af_ZA.ISO8859-15/LC_CTYPE base-locale-af nls +./usr/share/locale/af_ZA.ISO8859-15/LC_MESSAGES base-locale-af +./usr/share/locale/af_ZA.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-af nls +./usr/share/locale/af_ZA.ISO8859-15/LC_MONETARY base-locale-af nls +./usr/share/locale/af_ZA.ISO8859-15/LC_NUMERIC base-locale-af nls +./usr/share/locale/af_ZA.ISO8859-15/LC_TIME base-locale-af nls ./usr/share/locale/be base-locale-be ./usr/share/locale/be/LC_MESSAGES base-locale-be ./usr/share/locale/be_BY.CP1251 base-locale-be ./usr/share/locale/be_BY.CP1251/LC_CTYPE base-locale-be nls +./usr/share/locale/be_BY.CP1251/LC_MESSAGES base-locale-be +./usr/share/locale/be_BY.CP1251/LC_MESSAGES/SYS_LC_MESSAGES base-locale-be nls +./usr/share/locale/be_BY.CP1251/LC_MONETARY base-locale-be nls +./usr/share/locale/be_BY.CP1251/LC_NUMERIC base-locale-be nls +./usr/share/locale/be_BY.CP1251/LC_TIME base-locale-be nls ./usr/share/locale/be_BY.ISO8859-5 base-locale-be ./usr/share/locale/be_BY.ISO8859-5/LC_CTYPE base-locale-be nls +./usr/share/locale/be_BY.ISO8859-5/LC_MESSAGES base-locale-be +./usr/share/locale/be_BY.ISO8859-5/LC_MESSAGES/SYS_LC_MESSAGES base-locale-be nls +./usr/share/locale/be_BY.ISO8859-5/LC_MONETARY base-locale-be nls +./usr/share/locale/be_BY.ISO8859-5/LC_NUMERIC base-locale-be nls +./usr/share/locale/be_BY.ISO8859-5/LC_TIME base-locale-be nls ./usr/share/locale/bg_BG.CP1251 base-locale-bg ./usr/share/locale/bg_BG.CP1251/LC_CTYPE base-locale-bg nls +./usr/share/locale/bg_BG.CP1251/LC_MESSAGES base-locale-bg +./usr/share/locale/bg_BG.CP1251/LC_MESSAGES/SYS_LC_MESSAGES base-locale-bg nls +./usr/share/locale/bg_BG.CP1251/LC_MONETARY base-locale-bg nls +./usr/share/locale/bg_BG.CP1251/LC_NUMERIC base-locale-bg nls +./usr/share/locale/bg_BG.CP1251/LC_TIME base-locale-bg nls ./usr/share/locale/ca base-locale-ca ./usr/share/locale/ca/LC_MESSAGES base-locale-ca ./usr/share/locale/ca_ES.ISO8859-1 base-locale-ca ./usr/share/locale/ca_ES.ISO8859-1/LC_CTYPE base-locale-ca nls +./usr/share/locale/ca_ES.ISO8859-1/LC_MESSAGES base-locale-ca +./usr/share/locale/ca_ES.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ca nls +./usr/share/locale/ca_ES.ISO8859-1/LC_MONETARY base-locale-ca nls +./usr/share/locale/ca_ES.ISO8859-1/LC_NUMERIC base-locale-ca nls +./usr/share/locale/ca_ES.ISO8859-1/LC_TIME base-locale-ca nls ./usr/share/locale/ca_ES.ISO8859-15 base-locale-ca ./usr/share/locale/ca_ES.ISO8859-15/LC_CTYPE base-locale-ca nls +./usr/share/locale/ca_ES.ISO8859-15/LC_MESSAGES base-locale-ca +./usr/share/locale/ca_ES.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ca nls +./usr/share/locale/ca_ES.ISO8859-15/LC_MONETARY base-locale-ca nls +./usr/share/locale/ca_ES.ISO8859-15/LC_NUMERIC base-locale-ca nls +./usr/share/locale/ca_ES.ISO8859-15/LC_TIME base-locale-ca nls ./usr/share/locale/cs base-locale-cs ./usr/share/locale/cs/LC_MESSAGES base-locale-cs ./usr/share/locale/cs/LC_MESSAGES/grep.mo base-util_locale-cs nls @@ -2606,14 +2641,29 @@ ./usr/share/locale/cs/LC_MESSAGES/texinfo.mo base-texinfo_locale-cs nls ./usr/share/locale/cs_CZ.ISO8859-2 base-locale-cs ./usr/share/locale/cs_CZ.ISO8859-2/LC_CTYPE base-locale-cs nls +./usr/share/locale/cs_CZ.ISO8859-2/LC_MESSAGES base-locale-cs +./usr/share/locale/cs_CZ.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES base-locale-cs nls +./usr/share/locale/cs_CZ.ISO8859-2/LC_MONETARY base-locale-cs nls +./usr/share/locale/cs_CZ.ISO8859-2/LC_NUMERIC base-locale-cs nls +./usr/share/locale/cs_CZ.ISO8859-2/LC_TIME base-locale-cs nls ./usr/share/locale/da base-locale-da ./usr/share/locale/da/LC_MESSAGES base-locale-da ./usr/share/locale/da/LC_MESSAGES/tar.mo base-obsolete obsolete ./usr/share/locale/da/LC_MESSAGES/texinfo.mo base-texinfo_locale-da nls ./usr/share/locale/da_DK.ISO8859-1 base-locale-da ./usr/share/locale/da_DK.ISO8859-1/LC_CTYPE base-locale-da nls +./usr/share/locale/da_DK.ISO8859-1/LC_MESSAGES base-locale-da +./usr/share/locale/da_DK.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-da nls +./usr/share/locale/da_DK.ISO8859-1/LC_MONETARY base-locale-da nls +./usr/share/locale/da_DK.ISO8859-1/LC_NUMERIC base-locale-da nls +./usr/share/locale/da_DK.ISO8859-1/LC_TIME base-locale-da nls ./usr/share/locale/da_DK.ISO8859-15 base-locale-da ./usr/share/locale/da_DK.ISO8859-15/LC_CTYPE base-locale-da nls +./usr/share/locale/da_DK.ISO8859-15/LC_MESSAGES base-locale-da +./usr/share/locale/da_DK.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-da nls +./usr/share/locale/da_DK.ISO8859-15/LC_MONETARY base-locale-da nls +./usr/share/locale/da_DK.ISO8859-15/LC_NUMERIC base-locale-da nls +./usr/share/locale/da_DK.ISO8859-15/LC_TIME base-locale-da nls ./usr/share/locale/de base-locale-de ./usr/share/locale/de/LC_MESSAGES base-locale-de ./usr/share/locale/de/LC_MESSAGES/grep.mo base-util_locale-de nls @@ -2622,51 +2672,148 @@ ./usr/share/locale/de_AT base-locale-de ./usr/share/locale/de_AT.ISO8859-1 base-locale-de ./usr/share/locale/de_AT.ISO8859-1/LC_CTYPE base-locale-de nls +./usr/share/locale/de_AT.ISO8859-1/LC_MESSAGES base-locale-de +./usr/share/locale/de_AT.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-de nls +./usr/share/locale/de_AT.ISO8859-1/LC_MONETARY base-locale-de nls +./usr/share/locale/de_AT.ISO8859-1/LC_NUMERIC base-locale-de nls +./usr/share/locale/de_AT.ISO8859-1/LC_TIME base-locale-de nls ./usr/share/locale/de_AT.ISO8859-15 base-locale-de ./usr/share/locale/de_AT.ISO8859-15/LC_CTYPE base-locale-de nls +./usr/share/locale/de_AT.ISO8859-15/LC_MESSAGES base-locale-de +./usr/share/locale/de_AT.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-de nls +./usr/share/locale/de_AT.ISO8859-15/LC_MONETARY base-locale-de nls +./usr/share/locale/de_AT.ISO8859-15/LC_NUMERIC base-locale-de nls +./usr/share/locale/de_AT.ISO8859-15/LC_TIME base-locale-de nls ./usr/share/locale/de_AT/LC_MESSAGES base-locale-de ./usr/share/locale/de_AT/LC_MESSAGES/texinfo.mo base-texinfo_locale-de nls ./usr/share/locale/de_CH.ISO8859-1 base-locale-de ./usr/share/locale/de_CH.ISO8859-1/LC_CTYPE base-locale-de nls +./usr/share/locale/de_CH.ISO8859-1/LC_MESSAGES base-locale-de +./usr/share/locale/de_CH.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-de nls +./usr/share/locale/de_CH.ISO8859-1/LC_MONETARY base-locale-de nls +./usr/share/locale/de_CH.ISO8859-1/LC_NUMERIC base-locale-de nls +./usr/share/locale/de_CH.ISO8859-1/LC_TIME base-locale-de nls ./usr/share/locale/de_CH.ISO8859-15 base-locale-de ./usr/share/locale/de_CH.ISO8859-15/LC_CTYPE base-locale-de nls +./usr/share/locale/de_CH.ISO8859-15/LC_MESSAGES base-locale-de +./usr/share/locale/de_CH.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-de nls +./usr/share/locale/de_CH.ISO8859-15/LC_MONETARY base-locale-de nls +./usr/share/locale/de_CH.ISO8859-15/LC_NUMERIC base-locale-de nls +./usr/share/locale/de_CH.ISO8859-15/LC_TIME base-locale-de nls ./usr/share/locale/de_DE.ISO8859-1 base-locale-de ./usr/share/locale/de_DE.ISO8859-1/LC_CTYPE base-locale-de nls +./usr/share/locale/de_DE.ISO8859-1/LC_MESSAGES base-locale-de +./usr/share/locale/de_DE.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-de nls +./usr/share/locale/de_DE.ISO8859-1/LC_MONETARY base-locale-de nls +./usr/share/locale/de_DE.ISO8859-1/LC_NUMERIC base-locale-de nls +./usr/share/locale/de_DE.ISO8859-1/LC_TIME base-locale-de nls ./usr/share/locale/de_DE.ISO8859-15 base-locale-de ./usr/share/locale/de_DE.ISO8859-15/LC_CTYPE base-locale-de nls +./usr/share/locale/de_DE.ISO8859-15/LC_MESSAGES base-locale-de +./usr/share/locale/de_DE.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-de nls +./usr/share/locale/de_DE.ISO8859-15/LC_MONETARY base-locale-de nls +./usr/share/locale/de_DE.ISO8859-15/LC_NUMERIC base-locale-de nls +./usr/share/locale/de_DE.ISO8859-15/LC_TIME base-locale-de nls ./usr/share/locale/el base-locale-el ./usr/share/locale/el/LC_MESSAGES base-locale-el ./usr/share/locale/el/LC_MESSAGES/grep.mo base-util_locale-el nls ./usr/share/locale/el_GR.ISO8859-7 base-locale-el ./usr/share/locale/el_GR.ISO8859-7/LC_CTYPE base-locale-el nls -./usr/share/locale/en@boldquot base-locale-share -./usr/share/locale/en@boldquot/LC_MESSAGES base-locale-share -./usr/share/locale/en@quot base-locale-share -./usr/share/locale/en@quot/LC_MESSAGES base-locale-share +./usr/share/locale/el_GR.ISO8859-7/LC_MESSAGES base-locale-el +./usr/share/locale/el_GR.ISO8859-7/LC_MESSAGES/SYS_LC_MESSAGES base-locale-el nls +./usr/share/locale/el_GR.ISO8859-7/LC_MONETARY base-locale-el nls +./usr/share/locale/el_GR.ISO8859-7/LC_NUMERIC base-locale-el nls +./usr/share/locale/el_GR.ISO8859-7/LC_TIME base-locale-el nls +./usr/share/locale/en@boldquot base-locale-en +./usr/share/locale/en@boldquot/LC_MESSAGES base-locale-en +./usr/share/locale/en@quot base-locale-en +./usr/share/locale/en@quot/LC_MESSAGES base-locale-en ./usr/share/locale/en_AU.ISO8859-1 base-locale-en ./usr/share/locale/en_AU.ISO8859-1/LC_CTYPE base-locale-en nls +./usr/share/locale/en_AU.ISO8859-1/LC_MESSAGES base-locale-en +./usr/share/locale/en_AU.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_AU.ISO8859-1/LC_MONETARY base-locale-en nls +./usr/share/locale/en_AU.ISO8859-1/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_AU.ISO8859-1/LC_TIME base-locale-en nls ./usr/share/locale/en_AU.ISO8859-15 base-locale-en ./usr/share/locale/en_AU.ISO8859-15/LC_CTYPE base-locale-en nls +./usr/share/locale/en_AU.ISO8859-15/LC_MESSAGES base-locale-en +./usr/share/locale/en_AU.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_AU.ISO8859-15/LC_MONETARY base-locale-en nls +./usr/share/locale/en_AU.ISO8859-15/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_AU.ISO8859-15/LC_TIME base-locale-en nls ./usr/share/locale/en_CA.ISO8859-1 base-locale-en ./usr/share/locale/en_CA.ISO8859-1/LC_CTYPE base-locale-en nls +./usr/share/locale/en_CA.ISO8859-1/LC_MESSAGES base-locale-en +./usr/share/locale/en_CA.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_CA.ISO8859-1/LC_MONETARY base-locale-en nls +./usr/share/locale/en_CA.ISO8859-1/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_CA.ISO8859-1/LC_TIME base-locale-en nls ./usr/share/locale/en_CA.ISO8859-15 base-locale-en ./usr/share/locale/en_CA.ISO8859-15/LC_CTYPE base-locale-en nls +./usr/share/locale/en_CA.ISO8859-15/LC_MESSAGES base-locale-en +./usr/share/locale/en_CA.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_CA.ISO8859-15/LC_MONETARY base-locale-en nls +./usr/share/locale/en_CA.ISO8859-15/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_CA.ISO8859-15/LC_TIME base-locale-en nls ./usr/share/locale/en_GB.ISO8859-1 base-locale-en ./usr/share/locale/en_GB.ISO8859-1/LC_CTYPE base-locale-en nls +./usr/share/locale/en_GB.ISO8859-1/LC_MESSAGES base-locale-en +./usr/share/locale/en_GB.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_GB.ISO8859-1/LC_MONETARY base-locale-en nls +./usr/share/locale/en_GB.ISO8859-1/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_GB.ISO8859-1/LC_TIME base-locale-en nls ./usr/share/locale/en_GB.ISO8859-15 base-locale-en ./usr/share/locale/en_GB.ISO8859-15/LC_CTYPE base-locale-en nls +./usr/share/locale/en_GB.ISO8859-15/LC_MESSAGES base-locale-en +./usr/share/locale/en_GB.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_GB.ISO8859-15/LC_MONETARY base-locale-en nls +./usr/share/locale/en_GB.ISO8859-15/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_GB.ISO8859-15/LC_TIME base-locale-en nls ./usr/share/locale/en_NZ.ISO8859-1 base-locale-en ./usr/share/locale/en_NZ.ISO8859-1/LC_CTYPE base-locale-en nls +./usr/share/locale/en_NZ.ISO8859-1/LC_MESSAGES base-locale-en +./usr/share/locale/en_NZ.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_NZ.ISO8859-1/LC_MONETARY base-locale-en nls +./usr/share/locale/en_NZ.ISO8859-1/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_NZ.ISO8859-1/LC_TIME base-locale-en nls ./usr/share/locale/en_NZ.ISO8859-15 base-locale-en ./usr/share/locale/en_NZ.ISO8859-15/LC_CTYPE base-locale-en nls +./usr/share/locale/en_NZ.ISO8859-15/LC_MESSAGES base-locale-en +./usr/share/locale/en_NZ.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_NZ.ISO8859-15/LC_MONETARY base-locale-en nls +./usr/share/locale/en_NZ.ISO8859-15/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_NZ.ISO8859-15/LC_TIME base-locale-en nls ./usr/share/locale/en_US.ISO8859-1 base-locale-en ./usr/share/locale/en_US.ISO8859-1/LC_CTYPE base-locale-en nls +./usr/share/locale/en_US.ISO8859-1/LC_MESSAGES base-locale-en +./usr/share/locale/en_US.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_US.ISO8859-1/LC_MONETARY base-locale-en nls +./usr/share/locale/en_US.ISO8859-1/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_US.ISO8859-1/LC_TIME base-locale-en nls ./usr/share/locale/en_US.ISO8859-15 base-locale-en ./usr/share/locale/en_US.ISO8859-15/LC_CTYPE base-locale-en nls +./usr/share/locale/en_US.ISO8859-15/LC_MESSAGES base-locale-en +./usr/share/locale/en_US.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_US.ISO8859-15/LC_MONETARY base-locale-en nls +./usr/share/locale/en_US.ISO8859-15/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_US.ISO8859-15/LC_TIME base-locale-en nls +./usr/share/locale/en_US.US-ASCII base-locale-en +./usr/share/locale/en_US.US-ASCII/LC_CTYPE base-locale-en nls +./usr/share/locale/en_US.US-ASCII/LC_MESSAGES base-locale-en +./usr/share/locale/en_US.US-ASCII/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_US.US-ASCII/LC_MONETARY base-locale-en nls +./usr/share/locale/en_US.US-ASCII/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_US.US-ASCII/LC_TIME base-locale-en nls ./usr/share/locale/en_US.UTF-2 base-obsolete obsolete ./usr/share/locale/en_US.UTF-2/LC_CTYPE base-obsolete obsolete ./usr/share/locale/en_US.UTF-8 base-locale-en ./usr/share/locale/en_US.UTF-8/LC_CTYPE base-locale-en nls +./usr/share/locale/en_US.UTF-8/LC_MESSAGES base-locale-en +./usr/share/locale/en_US.UTF-8/LC_MESSAGES/SYS_LC_MESSAGES base-locale-en nls +./usr/share/locale/en_US.UTF-8/LC_MONETARY base-locale-en nls +./usr/share/locale/en_US.UTF-8/LC_NUMERIC base-locale-en nls +./usr/share/locale/en_US.UTF-8/LC_TIME base-locale-en nls ./usr/share/locale/eo base-locale-eo ./usr/share/locale/eo/LC_MESSAGES base-locale-eo ./usr/share/locale/eo/LC_MESSAGES/grep.mo base-util_locale-eo nls @@ -2677,24 +2824,59 @@ ./usr/share/locale/es/LC_MESSAGES/tar.mo base-obsolete obsolete ./usr/share/locale/es_ES.ISO8859-1 base-locale-es ./usr/share/locale/es_ES.ISO8859-1/LC_CTYPE base-locale-es nls +./usr/share/locale/es_ES.ISO8859-1/LC_MESSAGES base-locale-es +./usr/share/locale/es_ES.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-es nls +./usr/share/locale/es_ES.ISO8859-1/LC_MONETARY base-locale-es nls +./usr/share/locale/es_ES.ISO8859-1/LC_NUMERIC base-locale-es nls +./usr/share/locale/es_ES.ISO8859-1/LC_TIME base-locale-es nls ./usr/share/locale/es_ES.ISO8859-15 base-locale-es ./usr/share/locale/es_ES.ISO8859-15/LC_CTYPE base-locale-es nls +./usr/share/locale/es_ES.ISO8859-15/LC_MESSAGES base-locale-es +./usr/share/locale/es_ES.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-es nls +./usr/share/locale/es_ES.ISO8859-15/LC_MONETARY base-locale-es nls +./usr/share/locale/es_ES.ISO8859-15/LC_NUMERIC base-locale-es nls +./usr/share/locale/es_ES.ISO8859-15/LC_TIME base-locale-es nls ./usr/share/locale/et base-locale-et ./usr/share/locale/et/LC_MESSAGES base-locale-et ./usr/share/locale/et/LC_MESSAGES/grep.mo base-util_locale-et nls ./usr/share/locale/et/LC_MESSAGES/tar.mo base-obsolete obsolete ./usr/share/locale/et_EE.ISO8859-15 base-locale-et ./usr/share/locale/et_EE.ISO8859-15/LC_CTYPE base-locale-et nls +./usr/share/locale/et_EE.ISO8859-15/LC_MESSAGES base-locale-et +./usr/share/locale/et_EE.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-et nls +./usr/share/locale/et_EE.ISO8859-15/LC_MONETARY base-locale-et nls +./usr/share/locale/et_EE.ISO8859-15/LC_NUMERIC base-locale-et nls +./usr/share/locale/et_EE.ISO8859-15/LC_TIME base-locale-et nls ./usr/share/locale/eu_ES.ISO8859-1 base-locale-eu ./usr/share/locale/eu_ES.ISO8859-1/LC_CTYPE base-locale-eu nls +./usr/share/locale/eu_ES.ISO8859-1/LC_MESSAGES base-locale-eu +./usr/share/locale/eu_ES.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-eu nls +./usr/share/locale/eu_ES.ISO8859-1/LC_MONETARY base-locale-eu nls +./usr/share/locale/eu_ES.ISO8859-1/LC_NUMERIC base-locale-eu nls +./usr/share/locale/eu_ES.ISO8859-1/LC_TIME base-locale-eu nls ./usr/share/locale/eu_ES.ISO8859-15 base-locale-eu ./usr/share/locale/eu_ES.ISO8859-15/LC_CTYPE base-locale-eu nls -./usr/share/locale/fi base-locale-share -./usr/share/locale/fi/LC_MESSAGES base-locale-share +./usr/share/locale/eu_ES.ISO8859-15/LC_MESSAGES base-locale-eu +./usr/share/locale/eu_ES.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-eu nls +./usr/share/locale/eu_ES.ISO8859-15/LC_MONETARY base-locale-eu nls +./usr/share/locale/eu_ES.ISO8859-15/LC_NUMERIC base-locale-eu nls +./usr/share/locale/eu_ES.ISO8859-15/LC_TIME base-locale-eu nls +./usr/share/locale/fi base-locale-fi +./usr/share/locale/fi/LC_MESSAGES base-locale-fi ./usr/share/locale/fi_FI.ISO8859-1 base-locale-fi ./usr/share/locale/fi_FI.ISO8859-1/LC_CTYPE base-locale-fi nls +./usr/share/locale/fi_FI.ISO8859-1/LC_MESSAGES base-locale-fi +./usr/share/locale/fi_FI.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-fi nls +./usr/share/locale/fi_FI.ISO8859-1/LC_MONETARY base-locale-fi nls +./usr/share/locale/fi_FI.ISO8859-1/LC_NUMERIC base-locale-fi nls +./usr/share/locale/fi_FI.ISO8859-1/LC_TIME base-locale-fi nls ./usr/share/locale/fi_FI.ISO8859-15 base-locale-fi ./usr/share/locale/fi_FI.ISO8859-15/LC_CTYPE base-locale-fi nls +./usr/share/locale/fi_FI.ISO8859-15/LC_MESSAGES base-locale-fi +./usr/share/locale/fi_FI.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-fi nls +./usr/share/locale/fi_FI.ISO8859-15/LC_MONETARY base-locale-fi nls +./usr/share/locale/fi_FI.ISO8859-15/LC_NUMERIC base-locale-fi nls +./usr/share/locale/fi_FI.ISO8859-15/LC_TIME base-locale-fi nls ./usr/share/locale/fr base-locale-fr ./usr/share/locale/fr/LC_MESSAGES base-locale-fr ./usr/share/locale/fr/LC_MESSAGES/grep.mo base-util_locale-fr nls @@ -2702,20 +2884,60 @@ ./usr/share/locale/fr/LC_MESSAGES/texinfo.mo base-texinfo_locale-fr nls ./usr/share/locale/fr_BE.ISO8859-1 base-locale-fr ./usr/share/locale/fr_BE.ISO8859-1/LC_CTYPE base-locale-fr nls +./usr/share/locale/fr_BE.ISO8859-1/LC_MESSAGES base-locale-fr +./usr/share/locale/fr_BE.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-fr nls +./usr/share/locale/fr_BE.ISO8859-1/LC_MONETARY base-locale-fr nls +./usr/share/locale/fr_BE.ISO8859-1/LC_NUMERIC base-locale-fr nls +./usr/share/locale/fr_BE.ISO8859-1/LC_TIME base-locale-fr nls ./usr/share/locale/fr_BE.ISO8859-15 base-locale-fr ./usr/share/locale/fr_BE.ISO8859-15/LC_CTYPE base-locale-fr nls +./usr/share/locale/fr_BE.ISO8859-15/LC_MESSAGES base-locale-fr +./usr/share/locale/fr_BE.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-fr nls +./usr/share/locale/fr_BE.ISO8859-15/LC_MONETARY base-locale-fr nls +./usr/share/locale/fr_BE.ISO8859-15/LC_NUMERIC base-locale-fr nls +./usr/share/locale/fr_BE.ISO8859-15/LC_TIME base-locale-fr nls ./usr/share/locale/fr_CA.ISO8859-1 base-locale-fr ./usr/share/locale/fr_CA.ISO8859-1/LC_CTYPE base-locale-fr nls +./usr/share/locale/fr_CA.ISO8859-1/LC_MESSAGES base-locale-fr +./usr/share/locale/fr_CA.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-fr nls +./usr/share/locale/fr_CA.ISO8859-1/LC_MONETARY base-locale-fr nls +./usr/share/locale/fr_CA.ISO8859-1/LC_NUMERIC base-locale-fr nls +./usr/share/locale/fr_CA.ISO8859-1/LC_TIME base-locale-fr nls ./usr/share/locale/fr_CA.ISO8859-15 base-locale-fr ./usr/share/locale/fr_CA.ISO8859-15/LC_CTYPE base-locale-fr nls +./usr/share/locale/fr_CA.ISO8859-15/LC_MESSAGES base-locale-fr +./usr/share/locale/fr_CA.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-fr nls +./usr/share/locale/fr_CA.ISO8859-15/LC_MONETARY base-locale-fr nls +./usr/share/locale/fr_CA.ISO8859-15/LC_NUMERIC base-locale-fr nls +./usr/share/locale/fr_CA.ISO8859-15/LC_TIME base-locale-fr nls ./usr/share/locale/fr_CH.ISO8859-1 base-locale-fr ./usr/share/locale/fr_CH.ISO8859-1/LC_CTYPE base-locale-fr nls +./usr/share/locale/fr_CH.ISO8859-1/LC_MESSAGES base-locale-fr +./usr/share/locale/fr_CH.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-fr nls +./usr/share/locale/fr_CH.ISO8859-1/LC_MONETARY base-locale-fr nls +./usr/share/locale/fr_CH.ISO8859-1/LC_NUMERIC base-locale-fr nls +./usr/share/locale/fr_CH.ISO8859-1/LC_TIME base-locale-fr nls ./usr/share/locale/fr_CH.ISO8859-15 base-locale-fr ./usr/share/locale/fr_CH.ISO8859-15/LC_CTYPE base-locale-fr nls +./usr/share/locale/fr_CH.ISO8859-15/LC_MESSAGES base-locale-fr +./usr/share/locale/fr_CH.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-fr nls +./usr/share/locale/fr_CH.ISO8859-15/LC_MONETARY base-locale-fr nls +./usr/share/locale/fr_CH.ISO8859-15/LC_NUMERIC base-locale-fr nls +./usr/share/locale/fr_CH.ISO8859-15/LC_TIME base-locale-fr nls ./usr/share/locale/fr_FR.ISO8859-1 base-locale-fr ./usr/share/locale/fr_FR.ISO8859-1/LC_CTYPE base-locale-fr nls +./usr/share/locale/fr_FR.ISO8859-1/LC_MESSAGES base-locale-fr +./usr/share/locale/fr_FR.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-fr nls +./usr/share/locale/fr_FR.ISO8859-1/LC_MONETARY base-locale-fr nls +./usr/share/locale/fr_FR.ISO8859-1/LC_NUMERIC base-locale-fr nls +./usr/share/locale/fr_FR.ISO8859-1/LC_TIME base-locale-fr nls ./usr/share/locale/fr_FR.ISO8859-15 base-locale-fr ./usr/share/locale/fr_FR.ISO8859-15/LC_CTYPE base-locale-fr nls +./usr/share/locale/fr_FR.ISO8859-15/LC_MESSAGES base-locale-fr +./usr/share/locale/fr_FR.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-fr nls +./usr/share/locale/fr_FR.ISO8859-15/LC_MONETARY base-locale-fr nls +./usr/share/locale/fr_FR.ISO8859-15/LC_NUMERIC base-locale-fr nls +./usr/share/locale/fr_FR.ISO8859-15/LC_TIME base-locale-fr nls ./usr/share/locale/gl base-locale-gl ./usr/share/locale/gl/LC_MESSAGES base-locale-gl ./usr/share/locale/gl/LC_MESSAGES/grep.mo base-util_locale-gl nls @@ -2728,47 +2950,126 @@ ./usr/share/locale/hr/LC_MESSAGES/texinfo.mo base-texinfo_locale-hr nls ./usr/share/locale/hr_HR.ISO8859-2 base-locale-hr ./usr/share/locale/hr_HR.ISO8859-2/LC_CTYPE base-locale-hr nls +./usr/share/locale/hr_HR.ISO8859-2/LC_MESSAGES base-locale-hr +./usr/share/locale/hr_HR.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES base-locale-hr nls +./usr/share/locale/hr_HR.ISO8859-2/LC_MONETARY base-locale-hr nls +./usr/share/locale/hr_HR.ISO8859-2/LC_NUMERIC base-locale-hr nls +./usr/share/locale/hr_HR.ISO8859-2/LC_TIME base-locale-hr nls ./usr/share/locale/hu_HU.ISO8859-2 base-locale-hu ./usr/share/locale/hu_HU.ISO8859-2/LC_CTYPE base-locale-hu nls +./usr/share/locale/hu_HU.ISO8859-2/LC_MESSAGES base-locale-hu +./usr/share/locale/hu_HU.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES base-locale-hu nls +./usr/share/locale/hu_HU.ISO8859-2/LC_MONETARY base-locale-hu nls +./usr/share/locale/hu_HU.ISO8859-2/LC_NUMERIC base-locale-hu nls +./usr/share/locale/hu_HU.ISO8859-2/LC_TIME base-locale-hu nls ./usr/share/locale/hy_AM.ARMSCII-8 base-locale-hy ./usr/share/locale/hy_AM.ARMSCII-8/LC_CTYPE base-locale-hy nls +./usr/share/locale/hy_AM.ARMSCII-8/LC_MESSAGES base-locale-hy +./usr/share/locale/hy_AM.ARMSCII-8/LC_MESSAGES/SYS_LC_MESSAGES base-locale-hy nls +./usr/share/locale/hy_AM.ARMSCII-8/LC_MONETARY base-locale-hy nls +./usr/share/locale/hy_AM.ARMSCII-8/LC_NUMERIC base-locale-hy nls +./usr/share/locale/hy_AM.ARMSCII-8/LC_TIME base-locale-hy nls ./usr/share/locale/id base-locale-id ./usr/share/locale/id/LC_MESSAGES base-locale-id ./usr/share/locale/id/LC_MESSAGES/grep.mo base-util_locale-id nls ./usr/share/locale/id/LC_MESSAGES/tar.mo base-obsolete obsolete ./usr/share/locale/is_IS.ISO8859-1 base-locale-is ./usr/share/locale/is_IS.ISO8859-1/LC_CTYPE base-locale-is nls +./usr/share/locale/is_IS.ISO8859-1/LC_MESSAGES base-locale-is +./usr/share/locale/is_IS.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-is nls +./usr/share/locale/is_IS.ISO8859-1/LC_MONETARY base-locale-is nls +./usr/share/locale/is_IS.ISO8859-1/LC_NUMERIC base-locale-is nls +./usr/share/locale/is_IS.ISO8859-1/LC_TIME base-locale-is nls ./usr/share/locale/is_IS.ISO8859-15 base-locale-is ./usr/share/locale/is_IS.ISO8859-15/LC_CTYPE base-locale-is nls +./usr/share/locale/is_IS.ISO8859-15/LC_MESSAGES base-locale-is +./usr/share/locale/is_IS.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-is nls +./usr/share/locale/is_IS.ISO8859-15/LC_MONETARY base-locale-is nls +./usr/share/locale/is_IS.ISO8859-15/LC_NUMERIC base-locale-is nls +./usr/share/locale/is_IS.ISO8859-15/LC_TIME base-locale-is nls ./usr/share/locale/it base-locale-it ./usr/share/locale/it/LC_MESSAGES base-locale-it ./usr/share/locale/it/LC_MESSAGES/grep.mo base-util_locale-it nls ./usr/share/locale/it/LC_MESSAGES/tar.mo base-obsolete obsolete ./usr/share/locale/it_CH.ISO8859-1 base-locale-it ./usr/share/locale/it_CH.ISO8859-1/LC_CTYPE base-locale-it nls +./usr/share/locale/it_CH.ISO8859-1/LC_MESSAGES base-locale-it +./usr/share/locale/it_CH.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-it nls +./usr/share/locale/it_CH.ISO8859-1/LC_MONETARY base-locale-it nls +./usr/share/locale/it_CH.ISO8859-1/LC_NUMERIC base-locale-it nls +./usr/share/locale/it_CH.ISO8859-1/LC_TIME base-locale-it nls ./usr/share/locale/it_CH.ISO8859-15 base-locale-it ./usr/share/locale/it_CH.ISO8859-15/LC_CTYPE base-locale-it nls +./usr/share/locale/it_CH.ISO8859-15/LC_MESSAGES base-locale-it +./usr/share/locale/it_CH.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-it nls +./usr/share/locale/it_CH.ISO8859-15/LC_MONETARY base-locale-it nls +./usr/share/locale/it_CH.ISO8859-15/LC_NUMERIC base-locale-it nls +./usr/share/locale/it_CH.ISO8859-15/LC_TIME base-locale-it nls ./usr/share/locale/it_IT.ISO8859-1 base-locale-it ./usr/share/locale/it_IT.ISO8859-1/LC_CTYPE base-locale-it nls +./usr/share/locale/it_IT.ISO8859-1/LC_MESSAGES base-locale-it +./usr/share/locale/it_IT.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-it nls +./usr/share/locale/it_IT.ISO8859-1/LC_MONETARY base-locale-it nls +./usr/share/locale/it_IT.ISO8859-1/LC_NUMERIC base-locale-it nls +./usr/share/locale/it_IT.ISO8859-1/LC_TIME base-locale-it nls ./usr/share/locale/it_IT.ISO8859-15 base-locale-it ./usr/share/locale/it_IT.ISO8859-15/LC_CTYPE base-locale-it nls +./usr/share/locale/it_IT.ISO8859-15/LC_MESSAGES base-locale-it +./usr/share/locale/it_IT.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-it nls +./usr/share/locale/it_IT.ISO8859-15/LC_MONETARY base-locale-it nls +./usr/share/locale/it_IT.ISO8859-15/LC_NUMERIC base-locale-it nls +./usr/share/locale/it_IT.ISO8859-15/LC_TIME base-locale-it nls ./usr/share/locale/ja base-locale-ja ./usr/share/locale/ja/LC_MESSAGES base-locale-ja ./usr/share/locale/ja/LC_MESSAGES/grep.mo base-util_locale-ja nls ./usr/share/locale/ja/LC_MESSAGES/tar.mo base-obsolete obsolete ./usr/share/locale/ja/LC_MESSAGES/texinfo.mo base-texinfo_locale-ja nls -./usr/share/locale/ja_JP.ISO2022-JP base-locale-ja -./usr/share/locale/ja_JP.ISO2022-JP/LC_CTYPE base-locale-ja nls -./usr/share/locale/ja_JP.ISO2022-JP2 base-locale-ja -./usr/share/locale/ja_JP.ISO2022-JP2/LC_CTYPE base-locale-ja nls +./usr/share/locale/ja_JP.ISO2022-JP base-obsolete obsolete +./usr/share/locale/ja_JP.ISO2022-JP/LC_CTYPE base-obsolete obsolete +./usr/share/locale/ja_JP.ISO2022-JP2 base-obsolete obsolete +./usr/share/locale/ja_JP.ISO2022-JP2/LC_CTYPE base-obsolete obsolete +./usr/share/locale/ja_JP.ISO-2022-JP base-locale-ja +./usr/share/locale/ja_JP.ISO-2022-JP/LC_CTYPE base-locale-ja nls +./usr/share/locale/ja_JP.ISO-2022-JP/LC_MESSAGES base-locale-ja +./usr/share/locale/ja_JP.ISO-2022-JP/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ja nls +./usr/share/locale/ja_JP.ISO-2022-JP/LC_MONETARY base-locale-ja nls +./usr/share/locale/ja_JP.ISO-2022-JP/LC_NUMERIC base-locale-ja nls +./usr/share/locale/ja_JP.ISO-2022-JP/LC_TIME base-locale-ja nls +./usr/share/locale/ja_JP.ISO-2022-JP-2 base-locale-ja +./usr/share/locale/ja_JP.ISO-2022-JP-2/LC_CTYPE base-locale-ja nls +./usr/share/locale/ja_JP.ISO-2022-JP-2/LC_MESSAGES base-locale-ja +./usr/share/locale/ja_JP.ISO-2022-JP-2/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ja nls +./usr/share/locale/ja_JP.ISO-2022-JP-2/LC_MONETARY base-locale-ja nls +./usr/share/locale/ja_JP.ISO-2022-JP-2/LC_NUMERIC base-locale-ja nls +./usr/share/locale/ja_JP.ISO-2022-JP-2/LC_TIME base-locale-ja nls ./usr/share/locale/ja_JP.SJIS base-locale-ja ./usr/share/locale/ja_JP.SJIS/LC_CTYPE base-locale-ja nls +./usr/share/locale/ja_JP.SJIS/LC_MESSAGES base-locale-ja +./usr/share/locale/ja_JP.SJIS/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ja nls +./usr/share/locale/ja_JP.SJIS/LC_MONETARY base-locale-ja nls +./usr/share/locale/ja_JP.SJIS/LC_NUMERIC base-locale-ja nls +./usr/share/locale/ja_JP.SJIS/LC_TIME base-locale-ja nls ./usr/share/locale/ja_JP.ct base-locale-ja ./usr/share/locale/ja_JP.ct/LC_CTYPE base-locale-ja nls +./usr/share/locale/ja_JP.ct/LC_MESSAGES base-locale-ja +./usr/share/locale/ja_JP.ct/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ja nls +./usr/share/locale/ja_JP.ct/LC_MONETARY base-locale-ja nls +./usr/share/locale/ja_JP.ct/LC_NUMERIC base-locale-ja nls +./usr/share/locale/ja_JP.ct/LC_TIME base-locale-ja nls ./usr/share/locale/ja_JP.eucJP base-locale-ja ./usr/share/locale/ja_JP.eucJP/LC_CTYPE base-locale-ja nls +./usr/share/locale/ja_JP.eucJP/LC_MESSAGES base-locale-ja +./usr/share/locale/ja_JP.eucJP/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ja nls +./usr/share/locale/ja_JP.eucJP/LC_MONETARY base-locale-ja nls +./usr/share/locale/ja_JP.eucJP/LC_NUMERIC base-locale-ja nls +./usr/share/locale/ja_JP.eucJP/LC_TIME base-locale-ja nls ./usr/share/locale/kk_KZ.PT154 base-locale-kk ./usr/share/locale/kk_KZ.PT154/LC_CTYPE base-locale-kk nls +./usr/share/locale/kk_KZ.PT154/LC_MESSAGES base-locale-kk +./usr/share/locale/kk_KZ.PT154/LC_MESSAGES/SYS_LC_MESSAGES base-locale-kk nls +./usr/share/locale/kk_KZ.PT154/LC_MONETARY base-locale-kk nls +./usr/share/locale/kk_KZ.PT154/LC_NUMERIC base-locale-kk nls +./usr/share/locale/kk_KZ.PT154/LC_TIME base-locale-kk nls ./usr/share/locale/ko base-locale-ko ./usr/share/locale/ko/LC_MESSAGES base-locale-ko ./usr/share/locale/ko/LC_MESSAGES/grep.mo base-locale-ko nls @@ -2777,11 +3078,26 @@ ./usr/share/locale/ko_KR.UTF-8/LC_CTYPE base-obsolete obsolete ./usr/share/locale/ko_KR.eucKR base-locale-ko ./usr/share/locale/ko_KR.eucKR/LC_CTYPE base-locale-ko nls +./usr/share/locale/ko_KR.eucKR/LC_MESSAGES base-locale-ko +./usr/share/locale/ko_KR.eucKR/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ko nls +./usr/share/locale/ko_KR.eucKR/LC_MONETARY base-locale-ko nls +./usr/share/locale/ko_KR.eucKR/LC_NUMERIC base-locale-ko nls +./usr/share/locale/ko_KR.eucKR/LC_TIME base-locale-ko nls ./usr/share/locale/locale.alias base-locale-share nls ./usr/share/locale/lt_LT.ISO8859-13 base-locale-lt ./usr/share/locale/lt_LT.ISO8859-13/LC_CTYPE base-locale-lt nls +./usr/share/locale/lt_LT.ISO8859-13/LC_MESSAGES base-locale-lt +./usr/share/locale/lt_LT.ISO8859-13/LC_MESSAGES/SYS_LC_MESSAGES base-locale-lt nls +./usr/share/locale/lt_LT.ISO8859-13/LC_MONETARY base-locale-lt nls +./usr/share/locale/lt_LT.ISO8859-13/LC_NUMERIC base-locale-lt nls +./usr/share/locale/lt_LT.ISO8859-13/LC_TIME base-locale-lt nls ./usr/share/locale/lt_LT.ISO8859-4 base-locale-lt ./usr/share/locale/lt_LT.ISO8859-4/LC_CTYPE base-locale-lt nls +./usr/share/locale/lt_LT.ISO8859-4/LC_MESSAGES base-locale-lt +./usr/share/locale/lt_LT.ISO8859-4/LC_MESSAGES/SYS_LC_MESSAGES base-locale-lt nls +./usr/share/locale/lt_LT.ISO8859-4/LC_MONETARY base-locale-lt nls +./usr/share/locale/lt_LT.ISO8859-4/LC_NUMERIC base-locale-lt nls +./usr/share/locale/lt_LT.ISO8859-4/LC_TIME base-locale-lt nls ./usr/share/locale/nb base-locale-nb ./usr/share/locale/nb/LC_MESSAGES base-locale-nb ./usr/share/locale/nb/LC_MESSAGES/texinfo.mo base-texinfo_locale-nb nls @@ -2792,18 +3108,48 @@ ./usr/share/locale/nl/LC_MESSAGES/texinfo.mo base-texinfo_locale-nl nls ./usr/share/locale/nl_BE.ISO8859-1 base-locale-nl ./usr/share/locale/nl_BE.ISO8859-1/LC_CTYPE base-locale-nl nls +./usr/share/locale/nl_BE.ISO8859-1/LC_MESSAGES base-locale-nl +./usr/share/locale/nl_BE.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-nl nls +./usr/share/locale/nl_BE.ISO8859-1/LC_MONETARY base-locale-nl nls +./usr/share/locale/nl_BE.ISO8859-1/LC_NUMERIC base-locale-nl nls +./usr/share/locale/nl_BE.ISO8859-1/LC_TIME base-locale-nl nls ./usr/share/locale/nl_BE.ISO8859-15 base-locale-nl ./usr/share/locale/nl_BE.ISO8859-15/LC_CTYPE base-locale-nl nls +./usr/share/locale/nl_BE.ISO8859-15/LC_MESSAGES base-locale-nl +./usr/share/locale/nl_BE.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-nl nls +./usr/share/locale/nl_BE.ISO8859-15/LC_MONETARY base-locale-nl nls +./usr/share/locale/nl_BE.ISO8859-15/LC_NUMERIC base-locale-nl nls +./usr/share/locale/nl_BE.ISO8859-15/LC_TIME base-locale-nl nls ./usr/share/locale/nl_NL.ISO8859-1 base-locale-nl ./usr/share/locale/nl_NL.ISO8859-1/LC_CTYPE base-locale-nl nls +./usr/share/locale/nl_NL.ISO8859-1/LC_MESSAGES base-locale-nl +./usr/share/locale/nl_NL.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-nl nls +./usr/share/locale/nl_NL.ISO8859-1/LC_MONETARY base-locale-nl nls +./usr/share/locale/nl_NL.ISO8859-1/LC_NUMERIC base-locale-nl nls +./usr/share/locale/nl_NL.ISO8859-1/LC_TIME base-locale-nl nls ./usr/share/locale/nl_NL.ISO8859-15 base-locale-nl ./usr/share/locale/nl_NL.ISO8859-15/LC_CTYPE base-locale-nl nls -./usr/share/locale/nn base-locale-share -./usr/share/locale/nn/LC_MESSAGES base-locale-share +./usr/share/locale/nl_NL.ISO8859-15/LC_MESSAGES base-locale-nl +./usr/share/locale/nl_NL.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-nl nls +./usr/share/locale/nl_NL.ISO8859-15/LC_MONETARY base-locale-nl nls +./usr/share/locale/nl_NL.ISO8859-15/LC_NUMERIC base-locale-nl nls +./usr/share/locale/nl_NL.ISO8859-15/LC_TIME base-locale-nl nls +./usr/share/locale/nn base-locale-nn +./usr/share/locale/nn/LC_MESSAGES base-locale-nn ./usr/share/locale/nn_NO.ISO8859-1 base-locale-nn ./usr/share/locale/nn_NO.ISO8859-1/LC_CTYPE base-locale-nn nls +./usr/share/locale/nn_NO.ISO8859-1/LC_MESSAGES base-locale-nn +./usr/share/locale/nn_NO.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-nn nls +./usr/share/locale/nn_NO.ISO8859-1/LC_MONETARY base-locale-nn nls +./usr/share/locale/nn_NO.ISO8859-1/LC_NUMERIC base-locale-nn nls +./usr/share/locale/nn_NO.ISO8859-1/LC_TIME base-locale-nn nls ./usr/share/locale/nn_NO.ISO8859-15 base-locale-nn ./usr/share/locale/nn_NO.ISO8859-15/LC_CTYPE base-locale-nn nls +./usr/share/locale/nn_NO.ISO8859-15/LC_MESSAGES base-locale-nn +./usr/share/locale/nn_NO.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-nn nls +./usr/share/locale/nn_NO.ISO8859-15/LC_MONETARY base-locale-nn nls +./usr/share/locale/nn_NO.ISO8859-15/LC_NUMERIC base-locale-nn nls +./usr/share/locale/nn_NO.ISO8859-15/LC_TIME base-locale-nn nls ./usr/share/locale/no base-locale-no ./usr/share/locale/no/LC_MESSAGES base-locale-no ./usr/share/locale/no/LC_MESSAGES/grep.mo base-locale-no nls @@ -2813,8 +3159,18 @@ ./usr/share/locale/no@nynorsk/LC_MESSAGES base-locale-no ./usr/share/locale/no_NO.ISO8859-1 base-locale-no ./usr/share/locale/no_NO.ISO8859-1/LC_CTYPE base-locale-no nls +./usr/share/locale/no_NO.ISO8859-1/LC_MESSAGES base-locale-no +./usr/share/locale/no_NO.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-no nls +./usr/share/locale/no_NO.ISO8859-1/LC_MONETARY base-locale-no nls +./usr/share/locale/no_NO.ISO8859-1/LC_NUMERIC base-locale-no nls +./usr/share/locale/no_NO.ISO8859-1/LC_TIME base-locale-no nls ./usr/share/locale/no_NO.ISO8859-15 base-locale-no ./usr/share/locale/no_NO.ISO8859-15/LC_CTYPE base-locale-no nls +./usr/share/locale/no_NO.ISO8859-15/LC_MESSAGES base-locale-no +./usr/share/locale/no_NO.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-no nls +./usr/share/locale/no_NO.ISO8859-15/LC_MONETARY base-locale-no nls +./usr/share/locale/no_NO.ISO8859-15/LC_NUMERIC base-locale-no nls +./usr/share/locale/no_NO.ISO8859-15/LC_TIME base-locale-no nls ./usr/share/locale/pl base-locale-pl ./usr/share/locale/pl/LC_MESSAGES base-locale-pl ./usr/share/locale/pl/LC_MESSAGES/grep.mo base-locale-pl nls @@ -2822,24 +3178,49 @@ ./usr/share/locale/pl/LC_MESSAGES/texinfo.mo base-texinfo_locale-pl nls ./usr/share/locale/pl_PL.ISO8859-2 base-locale-pl ./usr/share/locale/pl_PL.ISO8859-2/LC_CTYPE base-locale-pl nls +./usr/share/locale/pl_PL.ISO8859-2/LC_MESSAGES base-locale-pl +./usr/share/locale/pl_PL.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES base-locale-pl nls +./usr/share/locale/pl_PL.ISO8859-2/LC_MONETARY base-locale-pl nls +./usr/share/locale/pl_PL.ISO8859-2/LC_NUMERIC base-locale-pl nls +./usr/share/locale/pl_PL.ISO8859-2/LC_TIME base-locale-pl nls ./usr/share/locale/pt base-locale-pt ./usr/share/locale/pt/LC_MESSAGES base-locale-pt ./usr/share/locale/pt/LC_MESSAGES/tar.mo base-obsolete obsolete ./usr/share/locale/pt_BR base-locale-pt ./usr/share/locale/pt_BR.ISO8859-1 base-locale-pt ./usr/share/locale/pt_BR.ISO8859-1/LC_CTYPE base-locale-pt nls +./usr/share/locale/pt_BR.ISO8859-1/LC_MESSAGES base-locale-pt +./usr/share/locale/pt_BR.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-pt nls +./usr/share/locale/pt_BR.ISO8859-1/LC_MONETARY base-locale-pt nls +./usr/share/locale/pt_BR.ISO8859-1/LC_NUMERIC base-locale-pt nls +./usr/share/locale/pt_BR.ISO8859-1/LC_TIME base-locale-pt nls ./usr/share/locale/pt_BR/LC_MESSAGES base-locale-pt ./usr/share/locale/pt_BR/LC_MESSAGES/grep.mo base-locale-pt nls ./usr/share/locale/pt_BR/LC_MESSAGES/tar.mo base-obsolete obsolete ./usr/share/locale/pt_PT.ISO8859-1 base-locale-pt ./usr/share/locale/pt_PT.ISO8859-1/LC_CTYPE base-locale-pt nls +./usr/share/locale/pt_PT.ISO8859-1/LC_MESSAGES base-locale-pt +./usr/share/locale/pt_PT.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-pt nls +./usr/share/locale/pt_PT.ISO8859-1/LC_MONETARY base-locale-pt nls +./usr/share/locale/pt_PT.ISO8859-1/LC_NUMERIC base-locale-pt nls +./usr/share/locale/pt_PT.ISO8859-1/LC_TIME base-locale-pt nls ./usr/share/locale/pt_PT.ISO8859-15 base-locale-pt ./usr/share/locale/pt_PT.ISO8859-15/LC_CTYPE base-locale-pt nls +./usr/share/locale/pt_PT.ISO8859-15/LC_MESSAGES base-locale-pt +./usr/share/locale/pt_PT.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-pt nls +./usr/share/locale/pt_PT.ISO8859-15/LC_MONETARY base-locale-pt nls +./usr/share/locale/pt_PT.ISO8859-15/LC_NUMERIC base-locale-pt nls +./usr/share/locale/pt_PT.ISO8859-15/LC_TIME base-locale-pt nls ./usr/share/locale/ro base-locale-ro ./usr/share/locale/ro/LC_MESSAGES base-locale-ro ./usr/share/locale/ro/LC_MESSAGES/texinfo.mo base-texinfo_locale-ro nls ./usr/share/locale/ro_RO.ISO8859-2 base-locale-ro ./usr/share/locale/ro_RO.ISO8859-2/LC_CTYPE base-locale-ro nls +./usr/share/locale/ro_RO.ISO8859-2/LC_MESSAGES base-locale-ro +./usr/share/locale/ro_RO.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ro nls +./usr/share/locale/ro_RO.ISO8859-2/LC_MONETARY base-locale-ro nls +./usr/share/locale/ro_RO.ISO8859-2/LC_NUMERIC base-locale-ro nls +./usr/share/locale/ro_RO.ISO8859-2/LC_TIME base-locale-ro nls ./usr/share/locale/ru base-locale-ru ./usr/share/locale/ru/LC_MESSAGES base-locale-ru ./usr/share/locale/ru/LC_MESSAGES/grep.mo base-locale-ru nls @@ -2847,14 +3228,39 @@ ./usr/share/locale/ru/LC_MESSAGES/texinfo.mo base-texinfo_locale-ru nls ./usr/share/locale/ru_BY.CP1251 base-locale-ru ./usr/share/locale/ru_BY.CP1251/LC_CTYPE base-locale-ru nls +./usr/share/locale/ru_BY.CP1251/LC_MESSAGES base-locale-ru +./usr/share/locale/ru_BY.CP1251/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ru nls +./usr/share/locale/ru_BY.CP1251/LC_MONETARY base-locale-ru nls +./usr/share/locale/ru_BY.CP1251/LC_NUMERIC base-locale-ru nls +./usr/share/locale/ru_BY.CP1251/LC_TIME base-locale-ru nls ./usr/share/locale/ru_RU.CP1251 base-locale-ru ./usr/share/locale/ru_RU.CP1251/LC_CTYPE base-locale-ru nls +./usr/share/locale/ru_RU.CP1251/LC_MESSAGES base-locale-ru +./usr/share/locale/ru_RU.CP1251/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ru nls +./usr/share/locale/ru_RU.CP1251/LC_MONETARY base-locale-ru nls +./usr/share/locale/ru_RU.CP1251/LC_NUMERIC base-locale-ru nls +./usr/share/locale/ru_RU.CP1251/LC_TIME base-locale-ru nls ./usr/share/locale/ru_RU.CP866 base-locale-ru ./usr/share/locale/ru_RU.CP866/LC_CTYPE base-locale-ru nls +./usr/share/locale/ru_RU.CP866/LC_MESSAGES base-locale-ru +./usr/share/locale/ru_RU.CP866/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ru nls +./usr/share/locale/ru_RU.CP866/LC_MONETARY base-locale-ru nls +./usr/share/locale/ru_RU.CP866/LC_NUMERIC base-locale-ru nls +./usr/share/locale/ru_RU.CP866/LC_TIME base-locale-ru nls ./usr/share/locale/ru_RU.ISO8859-5 base-locale-ru ./usr/share/locale/ru_RU.ISO8859-5/LC_CTYPE base-locale-ru nls +./usr/share/locale/ru_RU.ISO8859-5/LC_MESSAGES base-locale-ru +./usr/share/locale/ru_RU.ISO8859-5/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ru nls +./usr/share/locale/ru_RU.ISO8859-5/LC_MONETARY base-locale-ru nls +./usr/share/locale/ru_RU.ISO8859-5/LC_NUMERIC base-locale-ru nls +./usr/share/locale/ru_RU.ISO8859-5/LC_TIME base-locale-ru nls ./usr/share/locale/ru_RU.KOI8-R base-locale-ru ./usr/share/locale/ru_RU.KOI8-R/LC_CTYPE base-locale-ru nls +./usr/share/locale/ru_RU.KOI8-R/LC_MESSAGES base-locale-ru +./usr/share/locale/ru_RU.KOI8-R/LC_MESSAGES/SYS_LC_MESSAGES base-locale-ru nls +./usr/share/locale/ru_RU.KOI8-R/LC_MONETARY base-locale-ru nls +./usr/share/locale/ru_RU.KOI8-R/LC_NUMERIC base-locale-ru nls +./usr/share/locale/ru_RU.KOI8-R/LC_TIME base-locale-ru nls ./usr/share/locale/ru_SU.CP866 base-obsolete obsolete ./usr/share/locale/ru_SU.CP866/LC_CTYPE base-obsolete obsolete ./usr/share/locale/ru_SU.ISO8859-5 base-obsolete obsolete @@ -2865,18 +3271,56 @@ ./usr/share/locale/sk/LC_MESSAGES base-locale-sk ./usr/share/locale/sk_SK.ISO8859-2 base-locale-sk ./usr/share/locale/sk_SK.ISO8859-2/LC_CTYPE base-locale-sk nls +./usr/share/locale/sk_SK.ISO8859-2/LC_MESSAGES base-locale-sk nls +./usr/share/locale/sk_SK.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES base-locale-sk nls +./usr/share/locale/sk_SK.ISO8859-2/LC_MONETARY base-locale-sk nls +./usr/share/locale/sk_SK.ISO8859-2/LC_NUMERIC base-locale-sk nls +./usr/share/locale/sk_SK.ISO8859-2/LC_TIME base-locale-sk nls ./usr/share/locale/sl base-locale-sl ./usr/share/locale/sl/LC_MESSAGES base-locale-sl ./usr/share/locale/sl/LC_MESSAGES/grep.mo base-locale-sl nls ./usr/share/locale/sl/LC_MESSAGES/tar.mo base-obsolete obsolete ./usr/share/locale/sl_SI.ISO8859-2 base-locale-sl ./usr/share/locale/sl_SI.ISO8859-2/LC_CTYPE base-locale-sl nls -./usr/share/locale/sr base-locale-share -./usr/share/locale/sr/LC_MESSAGES base-locale-share -./usr/share/locale/sr_YU.ISO8859-2 base-locale-sr -./usr/share/locale/sr_YU.ISO8859-2/LC_CTYPE base-locale-sr nls -./usr/share/locale/sr_YU.ISO8859-5 base-locale-sr -./usr/share/locale/sr_YU.ISO8859-5/LC_CTYPE base-locale-sr nls +./usr/share/locale/sl_SI.ISO8859-2/LC_MESSAGES base-locale-sl +./usr/share/locale/sl_SI.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES base-locale-sl nls +./usr/share/locale/sl_SI.ISO8859-2/LC_MONETARY base-locale-sl nls +./usr/share/locale/sl_SI.ISO8859-2/LC_NUMERIC base-locale-sl nls +./usr/share/locale/sl_SI.ISO8859-2/LC_TIME base-locale-sl nls +./usr/share/locale/sr base-locale-sr +./usr/share/locale/sr/LC_MESSAGES base-locale-sr +./usr/share/locale/sr_ME.ISO8859-2 base-locale-sr +./usr/share/locale/sr_ME.ISO8859-2/LC_CTYPE base-locale-sr nls +./usr/share/locale/sr_ME.ISO8859-2/LC_MESSAGES base-locale-sr +./usr/share/locale/sr_ME.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES base-locale-sr nls +./usr/share/locale/sr_ME.ISO8859-2/LC_MONETARY base-locale-sr nls +./usr/share/locale/sr_ME.ISO8859-2/LC_NUMERIC base-locale-sr nls +./usr/share/locale/sr_ME.ISO8859-2/LC_TIME base-locale-sr nls +./usr/share/locale/sr_ME.ISO8859-5 base-locale-sr +./usr/share/locale/sr_ME.ISO8859-5/LC_CTYPE base-locale-sr nls +./usr/share/locale/sr_ME.ISO8859-5/LC_MESSAGES base-locale-sr +./usr/share/locale/sr_ME.ISO8859-5/LC_MESSAGES/SYS_LC_MESSAGES base-locale-sr nls +./usr/share/locale/sr_ME.ISO8859-5/LC_MONETARY base-locale-sr nls +./usr/share/locale/sr_ME.ISO8859-5/LC_NUMERIC base-locale-sr nls +./usr/share/locale/sr_ME.ISO8859-5/LC_TIME base-locale-sr nls +./usr/share/locale/sr_RS.ISO8859-2 base-locale-sr +./usr/share/locale/sr_RS.ISO8859-2/LC_CTYPE base-locale-sr nls +./usr/share/locale/sr_RS.ISO8859-2/LC_MESSAGES base-locale-sr +./usr/share/locale/sr_RS.ISO8859-2/LC_MESSAGES/SYS_LC_MESSAGES base-locale-sr nls +./usr/share/locale/sr_RS.ISO8859-2/LC_MONETARY base-locale-sr nls +./usr/share/locale/sr_RS.ISO8859-2/LC_NUMERIC base-locale-sr nls +./usr/share/locale/sr_RS.ISO8859-2/LC_TIME base-locale-sr nls +./usr/share/locale/sr_RS.ISO8859-5 base-locale-sr +./usr/share/locale/sr_RS.ISO8859-5/LC_CTYPE base-locale-sr nls +./usr/share/locale/sr_RS.ISO8859-5/LC_MESSAGES base-locale-sr +./usr/share/locale/sr_RS.ISO8859-5/LC_MESSAGES/SYS_LC_MESSAGES base-locale-sr nls +./usr/share/locale/sr_RS.ISO8859-5/LC_MONETARY base-locale-sr nls +./usr/share/locale/sr_RS.ISO8859-5/LC_NUMERIC base-locale-sr nls +./usr/share/locale/sr_RS.ISO8859-5/LC_TIME base-locale-sr nls +./usr/share/locale/sr_YU.ISO8859-2 base-obsolete obsolete +./usr/share/locale/sr_YU.ISO8859-2/LC_CTYPE base-obsolete obsolete +./usr/share/locale/sr_YU.ISO8859-5 base-obsolete obsolete +./usr/share/locale/sr_YU.ISO8859-5/LC_CTYPE base-obsolete obsolete ./usr/share/locale/sv base-locale-sv ./usr/share/locale/sv/LC_MESSAGES base-locale-sv ./usr/share/locale/sv/LC_MESSAGES/grep.mo base-util_locale-sv nls @@ -2884,38 +3328,95 @@ ./usr/share/locale/sv/LC_MESSAGES/texinfo.mo base-texinfo_locale-sv nls ./usr/share/locale/sv_SE.ISO8859-1 base-locale-sv ./usr/share/locale/sv_SE.ISO8859-1/LC_CTYPE base-locale-sv nls +./usr/share/locale/sv_SE.ISO8859-1/LC_MESSAGES base-locale-sv +./usr/share/locale/sv_SE.ISO8859-1/LC_MESSAGES/SYS_LC_MESSAGES base-locale-sv nls +./usr/share/locale/sv_SE.ISO8859-1/LC_MONETARY base-locale-sv nls +./usr/share/locale/sv_SE.ISO8859-1/LC_NUMERIC base-locale-sv nls +./usr/share/locale/sv_SE.ISO8859-1/LC_TIME base-locale-sv nls ./usr/share/locale/sv_SE.ISO8859-15 base-locale-sv ./usr/share/locale/sv_SE.ISO8859-15/LC_CTYPE base-locale-sv nls +./usr/share/locale/sv_SE.ISO8859-15/LC_MESSAGES base-locale-sv +./usr/share/locale/sv_SE.ISO8859-15/LC_MESSAGES/SYS_LC_MESSAGES base-locale-sv nls +./usr/share/locale/sv_SE.ISO8859-15/LC_MONETARY base-locale-sv nls +./usr/share/locale/sv_SE.ISO8859-15/LC_NUMERIC base-locale-sv nls +./usr/share/locale/sv_SE.ISO8859-15/LC_TIME base-locale-sv nls ./usr/share/locale/tr base-locale-tr ./usr/share/locale/tr/LC_MESSAGES base-locale-tr ./usr/share/locale/tr/LC_MESSAGES/tar.mo base-obsolete obsolete ./usr/share/locale/tr/LC_MESSAGES/texinfo.mo base-texinfo_locale-tr nls ./usr/share/locale/tr_TR.ISO8859-9 base-locale-tr ./usr/share/locale/tr_TR.ISO8859-9/LC_CTYPE base-locale-tr nls -./usr/share/locale/uk base-locale-share -./usr/share/locale/uk/LC_MESSAGES base-locale-share +./usr/share/locale/tr_TR.ISO8859-9/LC_MESSAGES base-locale-tr +./usr/share/locale/tr_TR.ISO8859-9/LC_MESSAGES/SYS_LC_MESSAGES base-locale-tr nls +./usr/share/locale/tr_TR.ISO8859-9/LC_MONETARY base-locale-tr nls +./usr/share/locale/tr_TR.ISO8859-9/LC_NUMERIC base-locale-tr nls +./usr/share/locale/tr_TR.ISO8859-9/LC_TIME base-locale-tr nls +./usr/share/locale/uk base-locale-uk +./usr/share/locale/uk/LC_MESSAGES base-locale-uk ./usr/share/locale/uk_UA.CP1251 base-locale-uk ./usr/share/locale/uk_UA.CP1251/LC_CTYPE base-locale-uk nls +./usr/share/locale/uk_UA.CP1251/LC_MESSAGES base-locale-uk +./usr/share/locale/uk_UA.CP1251/LC_MESSAGES/SYS_LC_MESSAGES base-locale-uk nls +./usr/share/locale/uk_UA.CP1251/LC_MONETARY base-locale-uk nls +./usr/share/locale/uk_UA.CP1251/LC_NUMERIC base-locale-uk nls +./usr/share/locale/uk_UA.CP1251/LC_TIME base-locale-uk nls ./usr/share/locale/uk_UA.ISO8859-5 base-locale-uk ./usr/share/locale/uk_UA.ISO8859-5/LC_CTYPE base-locale-uk nls +./usr/share/locale/uk_UA.ISO8859-5/LC_MESSAGES base-locale-uk +./usr/share/locale/uk_UA.ISO8859-5/LC_MESSAGES/SYS_LC_MESSAGES base-locale-uk nls +./usr/share/locale/uk_UA.ISO8859-5/LC_MONETARY base-locale-uk nls +./usr/share/locale/uk_UA.ISO8859-5/LC_NUMERIC base-locale-uk nls +./usr/share/locale/uk_UA.ISO8859-5/LC_TIME base-locale-uk nls ./usr/share/locale/uk_UA.KOI8-U base-locale-uk ./usr/share/locale/uk_UA.KOI8-U/LC_CTYPE base-locale-uk nls +./usr/share/locale/uk_UA.KOI8-U/LC_MESSAGES base-locale-uk +./usr/share/locale/uk_UA.KOI8-U/LC_MESSAGES/SYS_LC_MESSAGES base-locale-uk nls +./usr/share/locale/uk_UA.KOI8-U/LC_MONETARY base-locale-uk nls +./usr/share/locale/uk_UA.KOI8-U/LC_NUMERIC base-locale-uk nls +./usr/share/locale/uk_UA.KOI8-U/LC_TIME base-locale-uk nls ./usr/share/locale/zh_CN base-locale-zh ./usr/share/locale/zh_CN.GB18030 base-locale-zh ./usr/share/locale/zh_CN.GB18030/LC_CTYPE base-locale-zh nls +./usr/share/locale/zh_CN.GB18030/LC_MESSAGES base-locale-zh +./usr/share/locale/zh_CN.GB18030/LC_MESSAGES/SYS_LC_MESSAGES base-locale-zh nls +./usr/share/locale/zh_CN.GB18030/LC_MONETARY base-locale-zh nls +./usr/share/locale/zh_CN.GB18030/LC_NUMERIC base-locale-zh nls +./usr/share/locale/zh_CN.GB18030/LC_TIME base-locale-zh nls ./usr/share/locale/zh_CN.eucCN base-locale-zh ./usr/share/locale/zh_CN.eucCN/LC_CTYPE base-locale-zh nls +./usr/share/locale/zh_CN.eucCN/LC_MESSAGES base-locale-zh +./usr/share/locale/zh_CN.eucCN/LC_MESSAGES/SYS_LC_MESSAGES base-locale-zh nls +./usr/share/locale/zh_CN.eucCN/LC_MONETARY base-locale-zh nls +./usr/share/locale/zh_CN.eucCN/LC_NUMERIC base-locale-zh nls +./usr/share/locale/zh_CN.eucCN/LC_TIME base-locale-zh nls ./usr/share/locale/zh_CN/LC_MESSAGES base-locale-zh ./usr/share/locale/zh_CN/LC_MESSAGES/texinfo.mo base-texinfo_locale-zh nls -./usr/share/locale/zh_HK.Big5-HKSCS base-locale-zh -./usr/share/locale/zh_HK.Big5-HKSCS/LC_CTYPE base-locale-zh nls +./usr/share/locale/zh_HK.Big5-HKSCS base-obsolete obsolete +./usr/share/locale/zh_HK.Big5-HKSCS/LC_CTYPE base-obsolete obsolete +./usr/share/locale/zh_HK.Big5hkscs base-locale-zh +./usr/share/locale/zh_HK.Big5hkscs/LC_CTYPE base-locale-zh nls +./usr/share/locale/zh_HK.Big5hkscs/LC_MESSAGES base-locale-zh +./usr/share/locale/zh_HK.Big5hkscs/LC_MESSAGES/SYS_LC_MESSAGES base-locale-zh nls +./usr/share/locale/zh_HK.Big5hkscs/LC_MONETARY base-locale-zh nls +./usr/share/locale/zh_HK.Big5hkscs/LC_NUMERIC base-locale-zh nls +./usr/share/locale/zh_HK.Big5hkscs/LC_TIME base-locale-zh nls ./usr/share/locale/zh_TW base-locale-zh ./usr/share/locale/zh_TW.BIG5 base-obsolete obsolete ./usr/share/locale/zh_TW.BIG5/LC_CTYPE base-obsolete obsolete ./usr/share/locale/zh_TW.Big5 base-locale-zh ./usr/share/locale/zh_TW.Big5/LC_CTYPE base-locale-zh nls +./usr/share/locale/zh_TW.Big5/LC_MESSAGES base-locale-zh +./usr/share/locale/zh_TW.Big5/LC_MESSAGES/SYS_LC_MESSAGES base-locale-zh nls +./usr/share/locale/zh_TW.Big5/LC_MONETARY base-locale-zh nls +./usr/share/locale/zh_TW.Big5/LC_NUMERIC base-locale-zh nls +./usr/share/locale/zh_TW.Big5/LC_TIME base-locale-zh nls ./usr/share/locale/zh_TW.eucTW base-locale-zh ./usr/share/locale/zh_TW.eucTW/LC_CTYPE base-locale-zh nls +./usr/share/locale/zh_TW.eucTW/LC_MESSAGES base-locale-zh +./usr/share/locale/zh_TW.eucTW/LC_MESSAGES/SYS_LC_MESSAGES base-locale-zh nls +./usr/share/locale/zh_TW.eucTW/LC_MONETARY base-locale-zh nls +./usr/share/locale/zh_TW.eucTW/LC_NUMERIC base-locale-zh nls +./usr/share/locale/zh_TW.eucTW/LC_TIME base-locale-zh nls ./usr/share/locale/zh_TW/LC_MESSAGES base-locale-zh ./usr/share/locale/zh_TW/LC_MESSAGES/texinfo.mo base-texinfo_locale-zh nls ./usr/share/man base-man-share Index: distrib/utils/libhack/Makefile =================================================================== RCS file: /cvsroot/src/distrib/utils/libhack/Makefile,v retrieving revision 1.21 diff -u -r1.21 Makefile --- distrib/utils/libhack/Makefile 6 Nov 2007 19:27:07 -0000 1.21 +++ distrib/utils/libhack/Makefile 14 Dec 2008 18:55:44 -0000 @@ -7,7 +7,8 @@ .PATH.c: ${.CURDIR}/../../../lib/libc/gen ${.CURDIR}/../../../lib/libc/locale CPPFLAGS+= -DSMALL -CPPFLAGS.runetable.c+= -I ${HACKSRC}/../../../lib/libc -DALL_80_TO_FF_SW1 +CPPFLAGS.runetable.c+= -I${HACKSRC}/../../../lib/libc/citrus \ + -DALL_80_TO_FF_SW1 LIB= hack SRCS= getcap.c getgrent.c getnet.c getnetgr.c getpwent.c \ Index: distrib/utils/libhack/Makefile.inc =================================================================== RCS file: /cvsroot/src/distrib/utils/libhack/Makefile.inc,v retrieving revision 1.22 diff -u -r1.22 Makefile.inc --- distrib/utils/libhack/Makefile.inc 6 Nov 2007 19:27:07 -0000 1.22 +++ distrib/utils/libhack/Makefile.inc 14 Dec 2008 18:55:44 -0000 @@ -21,7 +21,8 @@ localeconv.o multibyte.o perror.o runetable.o setlocale.o \ strerror.o strsignal.o syslog.o utmp.o yplib.o -CPPFLAGS.runetable.c+= -I ${HACKSRC}/../../../lib/libc -DALL_80_TO_FF_SW1 +CPPFLAGS.runetable.c+= -I${HACKSRC}/../../../lib/libc/citrus \ + -DALL_80_TO_FF_SW1 libhack.o: ${HACKOBJS} ${LD} -r -o $@ ${HACKOBJS} Index: etc/mtree/NetBSD.dist =================================================================== RCS file: /cvsroot/src/etc/mtree/NetBSD.dist,v retrieving revision 1.386 diff -u -r1.386 NetBSD.dist --- etc/mtree/NetBSD.dist 12 Nov 2008 12:35:52 -0000 1.386 +++ etc/mtree/NetBSD.dist 14 Dec 2008 18:55:44 -0000 @@ -755,76 +755,121 @@ ./usr/share/legal ./usr/share/locale ./usr/share/locale/af_ZA.ISO8859-1 +./usr/share/locale/af_ZA.ISO8859-1/LC_MESSAGES ./usr/share/locale/af_ZA.ISO8859-15 +./usr/share/locale/af_ZA.ISO8859-15/LC_MESSAGES ./usr/share/locale/be ./usr/share/locale/be/LC_MESSAGES ./usr/share/locale/be_BY.CP1251 +./usr/share/locale/be_BY.CP1251/LC_MESSAGES ./usr/share/locale/be_BY.ISO8859-5 +./usr/share/locale/be_BY.ISO8859-5/LC_MESSAGES ./usr/share/locale/bg_BG.CP1251 +./usr/share/locale/bg_BG.CP1251/LC_MESSAGES ./usr/share/locale/ca ./usr/share/locale/ca/LC_MESSAGES ./usr/share/locale/ca_ES.ISO8859-1 +./usr/share/locale/ca_ES.ISO8859-1/LC_MESSAGES ./usr/share/locale/ca_ES.ISO8859-15 +./usr/share/locale/ca_ES.ISO8859-15/LC_MESSAGES ./usr/share/locale/cs ./usr/share/locale/cs/LC_MESSAGES ./usr/share/locale/cs_CZ.ISO8859-2 +./usr/share/locale/cs_CZ.ISO8859-2/LC_MESSAGES ./usr/share/locale/da ./usr/share/locale/da/LC_MESSAGES ./usr/share/locale/da_DK.ISO8859-1 +./usr/share/locale/da_DK.ISO8859-1/LC_MESSAGES ./usr/share/locale/da_DK.ISO8859-15 +./usr/share/locale/da_DK.ISO8859-15/LC_MESSAGES ./usr/share/locale/de ./usr/share/locale/de/LC_MESSAGES ./usr/share/locale/de_AT ./usr/share/locale/de_AT.ISO8859-1 +./usr/share/locale/de_AT.ISO8859-1/LC_MESSAGES ./usr/share/locale/de_AT.ISO8859-15 +./usr/share/locale/de_AT.ISO8859-15/LC_MESSAGES ./usr/share/locale/de_AT/LC_MESSAGES ./usr/share/locale/de_CH.ISO8859-1 +./usr/share/locale/de_CH.ISO8859-1/LC_MESSAGES ./usr/share/locale/de_CH.ISO8859-15 +./usr/share/locale/de_CH.ISO8859-15/LC_MESSAGES ./usr/share/locale/de_DE.ISO8859-1 +./usr/share/locale/de_DE.ISO8859-1/LC_MESSAGES ./usr/share/locale/de_DE.ISO8859-15 +./usr/share/locale/de_DE.ISO8859-15/LC_MESSAGES ./usr/share/locale/el ./usr/share/locale/el/LC_MESSAGES ./usr/share/locale/el_GR.ISO8859-7 +./usr/share/locale/el_GR.ISO8859-7/LC_MESSAGES ./usr/share/locale/en@boldquot ./usr/share/locale/en@boldquot/LC_MESSAGES ./usr/share/locale/en@quot ./usr/share/locale/en@quot/LC_MESSAGES ./usr/share/locale/en_AU.ISO8859-1 +./usr/share/locale/en_AU.ISO8859-1/LC_MESSAGES ./usr/share/locale/en_AU.ISO8859-15 +./usr/share/locale/en_AU.ISO8859-15/LC_MESSAGES ./usr/share/locale/en_CA.ISO8859-1 +./usr/share/locale/en_CA.ISO8859-1/LC_MESSAGES ./usr/share/locale/en_CA.ISO8859-15 +./usr/share/locale/en_CA.ISO8859-15/LC_MESSAGES ./usr/share/locale/en_GB.ISO8859-1 +./usr/share/locale/en_GB.ISO8859-1/LC_MESSAGES ./usr/share/locale/en_GB.ISO8859-15 +./usr/share/locale/en_GB.ISO8859-15/LC_MESSAGES ./usr/share/locale/en_NZ.ISO8859-1 +./usr/share/locale/en_NZ.ISO8859-1/LC_MESSAGES ./usr/share/locale/en_NZ.ISO8859-15 +./usr/share/locale/en_NZ.ISO8859-15/LC_MESSAGES ./usr/share/locale/en_US.ISO8859-1 +./usr/share/locale/en_US.ISO8859-1/LC_MESSAGES ./usr/share/locale/en_US.ISO8859-15 +./usr/share/locale/en_US.ISO8859-15/LC_MESSAGES +./usr/share/locale/en_US.US-ASCII +./usr/share/locale/en_US.US-ASCII/LC_MESSAGES ./usr/share/locale/en_US.UTF-8 +./usr/share/locale/en_US.UTF-8/LC_MESSAGES ./usr/share/locale/eo ./usr/share/locale/eo/LC_MESSAGES ./usr/share/locale/es ./usr/share/locale/es/LC_MESSAGES ./usr/share/locale/es_ES.ISO8859-1 +./usr/share/locale/es_ES.ISO8859-1/LC_MESSAGES ./usr/share/locale/es_ES.ISO8859-15 +./usr/share/locale/es_ES.ISO8859-15/LC_MESSAGES ./usr/share/locale/et ./usr/share/locale/et/LC_MESSAGES ./usr/share/locale/et_EE.ISO8859-15 +./usr/share/locale/et_EE.ISO8859-15/LC_MESSAGES ./usr/share/locale/eu_ES.ISO8859-1 +./usr/share/locale/eu_ES.ISO8859-1/LC_MESSAGES ./usr/share/locale/eu_ES.ISO8859-15 +./usr/share/locale/eu_ES.ISO8859-15/LC_MESSAGES ./usr/share/locale/fi ./usr/share/locale/fi/LC_MESSAGES ./usr/share/locale/fi_FI.ISO8859-1 +./usr/share/locale/fi_FI.ISO8859-1/LC_MESSAGES ./usr/share/locale/fi_FI.ISO8859-15 +./usr/share/locale/fi_FI.ISO8859-15/LC_MESSAGES ./usr/share/locale/fr ./usr/share/locale/fr/LC_MESSAGES ./usr/share/locale/fr_BE.ISO8859-1 +./usr/share/locale/fr_BE.ISO8859-1/LC_MESSAGES ./usr/share/locale/fr_BE.ISO8859-15 +./usr/share/locale/fr_BE.ISO8859-15/LC_MESSAGES ./usr/share/locale/fr_CA.ISO8859-1 +./usr/share/locale/fr_CA.ISO8859-1/LC_MESSAGES ./usr/share/locale/fr_CA.ISO8859-15 +./usr/share/locale/fr_CA.ISO8859-15/LC_MESSAGES ./usr/share/locale/fr_CH.ISO8859-1 +./usr/share/locale/fr_CH.ISO8859-1/LC_MESSAGES ./usr/share/locale/fr_CH.ISO8859-15 +./usr/share/locale/fr_CH.ISO8859-15/LC_MESSAGES ./usr/share/locale/fr_FR.ISO8859-1 +./usr/share/locale/fr_FR.ISO8859-1/LC_MESSAGES ./usr/share/locale/fr_FR.ISO8859-15 +./usr/share/locale/fr_FR.ISO8859-15/LC_MESSAGES ./usr/share/locale/gl ./usr/share/locale/gl/LC_MESSAGES ./usr/share/locale/he @@ -832,100 +877,155 @@ ./usr/share/locale/hr ./usr/share/locale/hr/LC_MESSAGES ./usr/share/locale/hr_HR.ISO8859-2 +./usr/share/locale/hr_HR.ISO8859-2/LC_MESSAGES ./usr/share/locale/hu_HU.ISO8859-2 +./usr/share/locale/hu_HU.ISO8859-2/LC_MESSAGES ./usr/share/locale/hy_AM.ARMSCII-8 +./usr/share/locale/hy_AM.ARMSCII-8/LC_MESSAGES ./usr/share/locale/id ./usr/share/locale/id/LC_MESSAGES ./usr/share/locale/is_IS.ISO8859-1 +./usr/share/locale/is_IS.ISO8859-1/LC_MESSAGES ./usr/share/locale/is_IS.ISO8859-15 +./usr/share/locale/is_IS.ISO8859-15/LC_MESSAGES ./usr/share/locale/it ./usr/share/locale/it/LC_MESSAGES ./usr/share/locale/it_CH.ISO8859-1 +./usr/share/locale/it_CH.ISO8859-1/LC_MESSAGES ./usr/share/locale/it_CH.ISO8859-15 +./usr/share/locale/it_CH.ISO8859-15/LC_MESSAGES ./usr/share/locale/it_IT.ISO8859-1 +./usr/share/locale/it_IT.ISO8859-1/LC_MESSAGES ./usr/share/locale/it_IT.ISO8859-15 +./usr/share/locale/it_IT.ISO8859-15/LC_MESSAGES ./usr/share/locale/ja ./usr/share/locale/ja/LC_MESSAGES -./usr/share/locale/ja_JP.ISO2022-JP -./usr/share/locale/ja_JP.ISO2022-JP2 +./usr/share/locale/ja_JP.ISO-2022-JP +./usr/share/locale/ja_JP.ISO-2022-JP/LC_MESSAGES +./usr/share/locale/ja_JP.ISO-2022-JP-2 +./usr/share/locale/ja_JP.ISO-2022-JP-2/LC_MESSAGES ./usr/share/locale/ja_JP.SJIS +./usr/share/locale/ja_JP.SJIS/LC_MESSAGES ./usr/share/locale/ja_JP.ct +./usr/share/locale/ja_JP.ct/LC_MESSAGES ./usr/share/locale/ja_JP.eucJP +./usr/share/locale/ja_JP.eucJP/LC_MESSAGES ./usr/share/locale/kk_KZ.PT154 +./usr/share/locale/kk_KZ.PT154/LC_MESSAGES ./usr/share/locale/ko ./usr/share/locale/ko/LC_MESSAGES ./usr/share/locale/ko_KR.eucKR -./usr/share/locale/lt_LT.ISO8859-4 +./usr/share/locale/ko_KR.eucKR/LC_MESSAGES ./usr/share/locale/lt_LT.ISO8859-13 +./usr/share/locale/lt_LT.ISO8859-13/LC_MESSAGES +./usr/share/locale/lt_LT.ISO8859-4 +./usr/share/locale/lt_LT.ISO8859-4/LC_MESSAGES ./usr/share/locale/nb ./usr/share/locale/nb/LC_MESSAGES ./usr/share/locale/nl ./usr/share/locale/nl/LC_MESSAGES ./usr/share/locale/nl_BE.ISO8859-1 +./usr/share/locale/nl_BE.ISO8859-1/LC_MESSAGES ./usr/share/locale/nl_BE.ISO8859-15 +./usr/share/locale/nl_BE.ISO8859-15/LC_MESSAGES ./usr/share/locale/nl_NL.ISO8859-1 +./usr/share/locale/nl_NL.ISO8859-1/LC_MESSAGES ./usr/share/locale/nl_NL.ISO8859-15 +./usr/share/locale/nl_NL.ISO8859-15/LC_MESSAGES ./usr/share/locale/nn ./usr/share/locale/nn/LC_MESSAGES ./usr/share/locale/nn_NO.ISO8859-1 +./usr/share/locale/nn_NO.ISO8859-1/LC_MESSAGES ./usr/share/locale/nn_NO.ISO8859-15 +./usr/share/locale/nn_NO.ISO8859-15/LC_MESSAGES ./usr/share/locale/no ./usr/share/locale/no/LC_MESSAGES ./usr/share/locale/no@nynorsk ./usr/share/locale/no@nynorsk/LC_MESSAGES ./usr/share/locale/no_NO.ISO8859-1 +./usr/share/locale/no_NO.ISO8859-1/LC_MESSAGES ./usr/share/locale/no_NO.ISO8859-15 +./usr/share/locale/no_NO.ISO8859-15/LC_MESSAGES ./usr/share/locale/pl ./usr/share/locale/pl/LC_MESSAGES ./usr/share/locale/pl_PL.ISO8859-2 +./usr/share/locale/pl_PL.ISO8859-2/LC_MESSAGES ./usr/share/locale/pt ./usr/share/locale/pt/LC_MESSAGES ./usr/share/locale/pt_BR -./usr/share/locale/pt_BR/LC_MESSAGES ./usr/share/locale/pt_BR.ISO8859-1 +./usr/share/locale/pt_BR.ISO8859-1/LC_MESSAGES +./usr/share/locale/pt_BR/LC_MESSAGES ./usr/share/locale/pt_PT.ISO8859-1 +./usr/share/locale/pt_PT.ISO8859-1/LC_MESSAGES ./usr/share/locale/pt_PT.ISO8859-15 +./usr/share/locale/pt_PT.ISO8859-15/LC_MESSAGES ./usr/share/locale/ro ./usr/share/locale/ro/LC_MESSAGES ./usr/share/locale/ro_RO.ISO8859-2 +./usr/share/locale/ro_RO.ISO8859-2/LC_MESSAGES ./usr/share/locale/ru ./usr/share/locale/ru/LC_MESSAGES ./usr/share/locale/ru_BY.CP1251 +./usr/share/locale/ru_BY.CP1251/LC_MESSAGES ./usr/share/locale/ru_RU.CP1251 +./usr/share/locale/ru_RU.CP1251/LC_MESSAGES ./usr/share/locale/ru_RU.CP866 +./usr/share/locale/ru_RU.CP866/LC_MESSAGES ./usr/share/locale/ru_RU.ISO8859-5 +./usr/share/locale/ru_RU.ISO8859-5/LC_MESSAGES ./usr/share/locale/ru_RU.KOI8-R +./usr/share/locale/ru_RU.KOI8-R/LC_MESSAGES ./usr/share/locale/sk ./usr/share/locale/sk/LC_MESSAGES ./usr/share/locale/sk_SK.ISO8859-2 +./usr/share/locale/sk_SK.ISO8859-2/LC_MESSAGES ./usr/share/locale/sl ./usr/share/locale/sl/LC_MESSAGES ./usr/share/locale/sl_SI.ISO8859-2 +./usr/share/locale/sl_SI.ISO8859-2/LC_MESSAGES ./usr/share/locale/sr ./usr/share/locale/sr/LC_MESSAGES -./usr/share/locale/sr_YU.ISO8859-2 -./usr/share/locale/sr_YU.ISO8859-5 +./usr/share/locale/sr_ME.ISO8859-2 +./usr/share/locale/sr_ME.ISO8859-2/LC_MESSAGES +./usr/share/locale/sr_ME.ISO8859-5 +./usr/share/locale/sr_ME.ISO8859-5/LC_MESSAGES +./usr/share/locale/sr_RS.ISO8859-2 +./usr/share/locale/sr_RS.ISO8859-2/LC_MESSAGES +./usr/share/locale/sr_RS.ISO8859-5 +./usr/share/locale/sr_RS.ISO8859-5/LC_MESSAGES ./usr/share/locale/sv ./usr/share/locale/sv/LC_MESSAGES ./usr/share/locale/sv_SE.ISO8859-1 +./usr/share/locale/sv_SE.ISO8859-1/LC_MESSAGES ./usr/share/locale/sv_SE.ISO8859-15 +./usr/share/locale/sv_SE.ISO8859-15/LC_MESSAGES ./usr/share/locale/tr ./usr/share/locale/tr/LC_MESSAGES ./usr/share/locale/tr_TR.ISO8859-9 +./usr/share/locale/tr_TR.ISO8859-9/LC_MESSAGES ./usr/share/locale/uk ./usr/share/locale/uk/LC_MESSAGES ./usr/share/locale/uk_UA.CP1251 +./usr/share/locale/uk_UA.CP1251/LC_MESSAGES ./usr/share/locale/uk_UA.ISO8859-5 +./usr/share/locale/uk_UA.ISO8859-5/LC_MESSAGES ./usr/share/locale/uk_UA.KOI8-U +./usr/share/locale/uk_UA.KOI8-U/LC_MESSAGES ./usr/share/locale/zh_CN +./usr/share/locale/zh_CN/LC_MESSAGES ./usr/share/locale/zh_CN.GB18030 +./usr/share/locale/zh_CN.GB18030/LC_MESSAGES ./usr/share/locale/zh_CN.eucCN -./usr/share/locale/zh_CN/LC_MESSAGES -./usr/share/locale/zh_HK.Big5-HKSCS +./usr/share/locale/zh_CN.eucCN/LC_MESSAGES +./usr/share/locale/zh_HK.Big5hkscs +./usr/share/locale/zh_HK.Big5hkscs/LC_MESSAGES ./usr/share/locale/zh_TW +./usr/share/locale/zh_TW/LC_MESSAGES ./usr/share/locale/zh_TW.Big5 +./usr/share/locale/zh_TW.Big5/LC_MESSAGES ./usr/share/locale/zh_TW.eucTW -./usr/share/locale/zh_TW/LC_MESSAGES +./usr/share/locale/zh_TW.eucTW/LC_MESSAGES ./usr/share/man ./usr/share/man/cat1 ./usr/share/man/cat1/atari Index: include/locale.h =================================================================== RCS file: /cvsroot/src/include/locale.h,v retrieving revision 1.14 diff -u -r1.14 locale.h --- include/locale.h 3 Feb 2005 04:39:32 -0000 1.14 +++ include/locale.h 14 Dec 2008 18:55:44 -0000 @@ -75,6 +75,14 @@ #include +#ifdef __SETLOCALE_SOURCE__ + +typedef struct _locale_impl_t *_locale_t; + +#define _LC_GLOBAL_LOCALE ((_locale_t)-1) + +#endif + __BEGIN_DECLS struct lconv *localeconv(void); #ifdef __SETLOCALE_SOURCE__ Index: lib/libc/citrus/Makefile.inc =================================================================== RCS file: /cvsroot/src/lib/libc/citrus/Makefile.inc,v retrieving revision 1.5 diff -u -r1.5 Makefile.inc --- lib/libc/citrus/Makefile.inc 21 Jul 2004 20:27:46 -0000 1.5 +++ lib/libc/citrus/Makefile.inc 14 Dec 2008 18:55:45 -0000 @@ -7,12 +7,23 @@ .if ${CITRUS} == "yes" MODULE_SHLIB_MAJOR!= . ${NETBSDSRCDIR}/lib/i18n_module/shlib_version ; echo $$major -CPPFLAGS+= -DI18NMODULE_MAJOR=${MODULE_SHLIB_MAJOR} -DCITRUS - -SRCS+= citrus_bcs.c citrus_csmapper.c citrus_ctype.c citrus_ctype_fallback.c \ +CPPFLAGS.citrus_module.c+=-DI18NMODULE_MAJOR=${MODULE_SHLIB_MAJOR} +SRCS+= citrus_bcs.c citrus_bcs_strtol.c citrus_bcs_strtoul.c \ + citrus_csmapper.c citrus_ctype.c citrus_ctype_fallback.c \ citrus_db.c citrus_db_hash.c citrus_esdb.c citrus_hash.c \ citrus_iconv.c citrus_lookup.c \ citrus_mapper.c citrus_memstream.c citrus_mmap.c citrus_module.c \ citrus_none.c citrus_stdenc.c - +SRCS+= citrus_lc_ctype.c \ + citrus_lc_monetary.c \ + citrus_lc_numeric.c \ + citrus_lc_time.c \ + citrus_lc_messages.c +CPPFLAGS.citrus_bcs_strtol.c+= -I${LIBCDIR}/../../common/lib/libc/stdlib +CPPFLAGS.citrus_bcs_strtoul.c+= -I${LIBCDIR}/../../common/lib/libc/stdlib +CPPFLAGS.citrus_lc_ctype.c+= -I${LIBCDIR}/locale +CPPFLAGS.citrus_lc_monetary.c+= -I${LIBCDIR}/locale +CPPFLAGS.citrus_lc_numeric.c+= -I${LIBCDIR}/locale +CPPFLAGS.citrus_lc_time.c+= -I${LIBCDIR}/locale +CPPFLAGS.citrus_lc_messages.c+= -I${LIBCDIR}/locale .endif Index: lib/libc/citrus/citrus_aliasname_local.h =================================================================== RCS file: lib/libc/citrus/citrus_aliasname_local.h diff -N lib/libc/citrus/citrus_aliasname_local.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_aliasname_local.h 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,48 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _CITRUS_ALIASNAME_LOCAL_H_ +#define _CITRUS_ALIASNAME_LOCAL_H_ + +static __inline const char * +__unaliasname(const char *dbname, const char *alias, + void *buf, size_t bufsize) +{ + return _lookup_simple(dbname, alias, + buf, bufsize, _LOOKUP_CASE_SENSITIVE); +} + +static __inline int +__isforcemapping(const char *name) +{ + _DIAGASSERT(name != NULL); + + return _bcs_strcasecmp("/force", name); +} + +#endif /*_CITRUS_ALIASNAME_LOCAL_H_*/ Index: lib/libc/citrus/citrus_bcs.h =================================================================== RCS file: /cvsroot/src/lib/libc/citrus/citrus_bcs.h,v retrieving revision 1.4 diff -u -r1.4 citrus_bcs.h --- lib/libc/citrus/citrus_bcs.h 9 Feb 2008 14:56:20 -0000 1.4 +++ lib/libc/citrus/citrus_bcs.h 14 Dec 2008 18:55:45 -0000 @@ -87,6 +87,12 @@ void _citrus_bcs_trunc_rws_len(const char * __restrict, size_t * __restrict); void _citrus_bcs_convert_to_lower(char *); void _citrus_bcs_convert_to_upper(char *); + +long int _citrus_bcs_strtol( + const char * __restrict, char ** __restrict, int); +unsigned long int _citrus_bcs_strtoul( + const char * __restrict, char ** __restrict, int); + __END_DECLS #endif Index: lib/libc/citrus/citrus_bcs_strtol.c =================================================================== RCS file: lib/libc/citrus/citrus_bcs_strtol.c diff -N lib/libc/citrus/citrus_bcs_strtol.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_bcs_strtol.c 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,59 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c) 2005 The DragonFly Project. All rights reserved. + * Copyright (c) 2003, 2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__RCSID("$NetBSD$"); + +#include +#include +#include +#include +#include + +#include "citrus_namespace.h" +#include "citrus_bcs.h" + +#define _FUNCNAME _bcs_strtol +#define __INT long int +#define __INT_MIN LONG_MIN +#define __INT_MAX LONG_MAX + +#undef isspace +#define isspace(c) _bcs_isspace(c) + +#undef isdigit +#define isdigit(c) _bcs_isdigit(c) + +#undef isalpha +#define isalpha(c) _bcs_isalpha(c) + +#undef isupper +#define isupper(c) _bcs_isupper(c) + +#include "_strtol.h" Index: lib/libc/citrus/citrus_bcs_strtoul.c =================================================================== RCS file: lib/libc/citrus/citrus_bcs_strtoul.c diff -N lib/libc/citrus/citrus_bcs_strtoul.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_bcs_strtoul.c 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,64 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c) 2005 The DragonFly Project. All rights reserved. + * Copyright (c) 2003, 2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if !defined(lint) +__RCSID("$NetBSD$"); +#endif /* not lint */ + +#if HAVE_NBTOOL_CONFIG_H +#include "nbtool_config.h" +#endif + +#include +#include +#include +#include +#include + +#include "citrus_namespace.h" +#include "citrus_bcs.h" + +#define _FUNCNAME _bcs_strtoul +#define __UINT unsigned long int +#define __UINT_MAX ULONG_MAX + +#undef isspace +#define isspace(c) _bcs_isspace(c) + +#undef isdigit +#define isdigit(c) _bcs_isdigit(c) + +#undef isalpha +#define isalpha(c) _bcs_isalpha(c) + +#undef isupper +#define isupper(c) _bcs_isupper(c) + +#include "_strtoul.h" Index: lib/libc/citrus/citrus_csmapper.c =================================================================== RCS file: /cvsroot/src/lib/libc/citrus/citrus_csmapper.c,v retrieving revision 1.8 diff -u -r1.8 citrus_csmapper.c --- lib/libc/citrus/citrus_csmapper.c 9 Feb 2008 14:56:20 -0000 1.8 +++ lib/libc/citrus/citrus_csmapper.c 14 Dec 2008 18:55:45 -0000 @@ -208,7 +208,7 @@ "%.*s", (int)(z1.end-z1.begin), z1.begin); snprintf(buf, sizeof(buf), "%.*s", (int)(z2.end-z2.begin), z2.begin); - pa->norm = strtoul(buf, NULL, 0); + pa->norm = _bcs_strtoul(buf, NULL, 0); return 0; } Index: lib/libc/citrus/citrus_fix_grouping.h =================================================================== RCS file: lib/libc/citrus/citrus_fix_grouping.h diff -N lib/libc/citrus/citrus_fix_grouping.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_fix_grouping.h 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,55 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _CITRUS_FIX_GROUPING_H_ +#define _CITRUS_FIX_GROUPING_H_ + +#define _CITRUS_LC_GROUPING_VALUE_MIN 0 +#define _CITRUS_LC_GROUPING_VALUE_MAX 126 +#define _CITRUS_LC_GROUPING_VALUE_NO_FUTHER 127 + +#if CHAR_MAX != _CITRUS_LC_GROUPING_VALUE_NO_FUTHER +static __inline void +_citrus_fixup_char_max_md(char *grouping) +{ + char *p; + + _DIAGASSERT(grouping != NULL); + + for (p = grouping; *p != '\0'; ++p) { + if (*p == _CITRUS_LC_GROUPING_VALUE_NO_FUTHER) + *p = (char)CHAR_MAX; + } +} +#define _CITRUS_FIXUP_CHAR_MAX_MD(grouping) \ + _citrus_fixup_char_max_md(__UNCONST(grouping)) +#else +#define _CITRUS_FIXUP_CHAR_MAX_MD(grouping) /* nothing to do */ +#endif + +#endif /*_CITRUS_FIX_GROUPING_H_*/ Index: lib/libc/citrus/citrus_lc_ctype.c =================================================================== RCS file: lib/libc/citrus/citrus_lc_ctype.c diff -N lib/libc/citrus/citrus_lc_ctype.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_ctype.c 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,150 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "reentrant.h" +#include +#include +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "citrus_namespace.h" +#include "citrus_bcs.h" +#include "citrus_region.h" +#include "citrus_lookup.h" +#include "citrus_aliasname_local.h" +#include "citrus_module.h" +#include "citrus_ctype.h" + +#include "rune.h" +#include "rune_local.h" +#include "multibyte.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_citrus_LC_CTYPE_, name) + +/* + * macro required by nb_lc_template(_decl).h + */ +#define _CATEGORY_TYPE _RuneLocale + +#include "nb_lc_template_decl.h" + +static int +_citrus_LC_CTYPE_create_impl(const char * __restrict root, + const char * __restrict name, _RuneLocale ** __restrict pdata) +{ + char path[PATH_MAX + 1]; + FILE *fp; + _RuneLocale *data; + int ret; + + _DIAGASSERT(root != NULL); + _DIAGASSERT(name != NULL); + _DIAGASSERT(pdata != NULL); + + snprintf(path, sizeof(path), + "%s/%s/LC_CTYPE", root, name); + fp = fopen(path, "r"); + if (fp == NULL) + return ENOENT; + data = _Read_RuneMagi(fp); + if (data == NULL) { + data = _Read_CTypeAsRune(fp); + if (data == NULL) { + fclose(fp); + return EFTYPE; + } + } + fclose(fp); + ret = _citrus_ctype_open(&data->rl_citrus_ctype, data->rl_encoding, + data->rl_variable, data->rl_variable_len, _PRIVSIZE); + if (!ret) + ret = __runetable_to_netbsd_ctype(data); + if (ret || __MB_LEN_MAX_RUNTIME < + _citrus_ctype_get_mb_cur_max(data->rl_citrus_ctype)) { + _NukeRune(data); + return EINVAL; + } + *pdata = data; + return 0; +} + +static __inline void +_PREFIX(build_cache)(struct _locale_cache_t * __restrict cache, + _RuneLocale * __restrict data) +{ + _DIAGASSERT(cache != NULL); + _DIAGASSERT(data != NULL); + + cache->ctype_tab = data->rl_ctype_tab; + cache->tolower_tab = data->rl_tolower_tab; + cache->toupper_tab = data->rl_toupper_tab; + cache->mb_cur_max = _citrus_ctype_get_mb_cur_max(data->rl_citrus_ctype); + cache->items[(size_t)CODESET] = data->rl_codeset; +} + +static __inline void +_PREFIX(fixup)(_RuneLocale *data) +{ + _DIAGASSERT(data != NULL); + + __mb_cur_max = _citrus_ctype_get_mb_cur_max(data->rl_citrus_ctype); + _ctype_ = data->rl_ctype_tab; + _tolower_tab_ = data->rl_tolower_tab; + _toupper_tab_ = data->rl_toupper_tab; + _CurrentRuneLocale = data; +} + +/* + * macro required by nb_lc_template.h + */ +#define _CATEGORY_ID LC_CTYPE +#define _CATEGORY_NAME "LC_CTYPE" +#define _CATEGORY_DEFAULT _DefaultRuneLocale + +#include "nb_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_citrus_LC_CTYPE_); Index: lib/libc/citrus/citrus_lc_messages.c =================================================================== RCS file: lib/libc/citrus/citrus_lc_messages.c diff -N lib/libc/citrus/citrus_lc_messages.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_messages.c 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,163 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "namespace.h" +#include "reentrant.h" +#include +#include +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "citrus_namespace.h" +#include "citrus_types.h" +#include "citrus_bcs.h" +#include "citrus_region.h" +#include "citrus_lookup.h" +#include "citrus_aliasname_local.h" +#include "citrus_module.h" +#include "citrus_mmap.h" +#include "citrus_hash.h" +#include "citrus_db.h" +#include "citrus_db_hash.h" +#include "citrus_memstream.h" +#include "rune.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_citrus_LC_MESSAGES_, name) + +#include "nb_lc_messages_misc.h" +#include "citrus_lc_template_decl.h" + +static __inline void +_citrus_LC_MESSAGES_uninit(_MessagesLocale *data) +{ + free(__UNCONST(data->yesexpr)); + free(__UNCONST(data->noexpr)); + free(__UNCONST(data->yesstr)); + free(__UNCONST(data->nostr)); +} + +#include "citrus_lc_messages.h" + +struct _citrus_LC_MESSAGES_key { + const char *name; + size_t offset; +}; + +#define OFFSET(field) (offsetof(_MessagesLocale, field)) +static const struct _citrus_LC_MESSAGES_key keys[] = { + { _CITRUS_LC_MESSAGES_SYM_YESEXPR, OFFSET(yesexpr) }, + { _CITRUS_LC_MESSAGES_SYM_NOEXPR, OFFSET(noexpr ) }, + { _CITRUS_LC_MESSAGES_SYM_YESSTR, OFFSET(yesstr ) }, + { _CITRUS_LC_MESSAGES_SYM_NOSTR, OFFSET(nostr ) }, + { NULL, 0 } +}; + +static __inline int +_citrus_LC_MESSAGES_init_normal(_MessagesLocale * __restrict data, + struct _citrus_db * __restrict db) +{ + const struct _citrus_LC_MESSAGES_key *key; + char **p; + const char *s; + + _DIAGASSERT(data != NULL); + _DIAGASSERT(db != NULL); + + memset(data, 0, sizeof(*data)); + for (key = &keys[0]; key->name != NULL; ++key) { + if (_db_lookupstr_by_s(db, key->name, &s, NULL)) + goto fatal; + p = (char **)(void *) + (((char *)(void *)data) + key->offset); + *p = strdup(s); + if (*p == NULL) + goto fatal; + } + return 0; + +fatal: + _citrus_LC_MESSAGES_uninit(data); + return EFTYPE; +} + +static __inline int +_citrus_LC_MESSAGES_init_fallback(_MessagesLocale * __restrict data, + struct _memstream * __restrict ms) +{ + const struct _citrus_LC_MESSAGES_key *key; + char **p; + const char *s; + size_t n; + + _DIAGASSERT(data != NULL); + _DIAGASSERT(ms != NULL); + + memset(data, 0, sizeof(*data)); + for (key = &keys[0]; key->name != NULL; ++key) { + if ((s = _memstream_getln(ms, &n)) == NULL) + goto fatal; + p = (char **)(void *) + (((char *)(void *)data) + key->offset); + *p = strndup(s, n - 1); + if (*p == NULL) + goto fatal; + } + return 0; + +fatal: + _citrus_LC_MESSAGES_uninit(data); + return EFTYPE; +} + +/* + * macro required by citrus_lc_template.h + */ +#define _CATEGORY_DB "LC_MESSAGES/SYS_LC_MESSAGES" +#define _CATEGORY_MAGIC _CITRUS_LC_MESSAGES_MAGIC_1 + +#include "citrus_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_citrus_LC_MESSAGES_); Index: lib/libc/citrus/citrus_lc_messages.h =================================================================== RCS file: lib/libc/citrus/citrus_lc_messages.h diff -N lib/libc/citrus/citrus_lc_messages.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_messages.h 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,47 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _CITRUS_LC_MESSAGES_H_ +#define _CITRUS_LC_MESSAGES_H_ + +/* + * + */ +#define _CITRUS_LC_MESSAGES_MAGIC_1 "CtrsME10" +#define _CITRUS_LC_MESSAGES_SYM_VERSION "version" +#define _CITRUS_LC_MESSAGES_VERSION 0x00000001 + +/* + * + */ +#define _CITRUS_LC_MESSAGES_SYM_YESEXPR "yesexpr" +#define _CITRUS_LC_MESSAGES_SYM_NOEXPR "noexpr" +#define _CITRUS_LC_MESSAGES_SYM_YESSTR "yesstr" +#define _CITRUS_LC_MESSAGES_SYM_NOSTR "nostr" + +#endif /*_CITRUS_LC_MESSAGES_H_*/ Index: lib/libc/citrus/citrus_lc_monetary.c =================================================================== RCS file: lib/libc/citrus/citrus_lc_monetary.c diff -N lib/libc/citrus/citrus_lc_monetary.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_monetary.c 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,220 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "namespace.h" +#include "reentrant.h" +#include +#include +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "citrus_namespace.h" +#include "citrus_types.h" +#include "citrus_bcs.h" +#include "citrus_region.h" +#include "citrus_lookup.h" +#include "citrus_aliasname_local.h" +#include "citrus_module.h" +#include "citrus_mmap.h" +#include "citrus_hash.h" +#include "citrus_db.h" +#include "citrus_db_hash.h" +#include "citrus_memstream.h" +#include "rune.h" + +#include "fix_grouping.h" +#include "citrus_fix_grouping.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_citrus_LC_MONETARY_, name) + +#include "nb_lc_monetary_misc.h" +#include "citrus_lc_template_decl.h" + +static __inline void +_citrus_LC_MONETARY_uninit(_MonetaryLocale *data) +{ + _DIAGASSERT(data != NULL); + + free(__UNCONST(data->int_curr_symbol)); + free(__UNCONST(data->currency_symbol)); + free(__UNCONST(data->mon_decimal_point)); + free(__UNCONST(data->mon_thousands_sep)); + free(__UNCONST(data->mon_grouping)); + free(__UNCONST(data->positive_sign)); + free(__UNCONST(data->negative_sign)); +} + +#include "citrus_lc_monetary.h" + +struct _citrus_LC_MONETARY_key { + const char *name; + size_t offset; +}; + +#define OFFSET(field) (offsetof(_MonetaryLocale, field)) +static const struct _citrus_LC_MONETARY_key keys_string[] = { + { _CITRUS_LC_MONETARY_SYM_INT_CURR_SYMBOL, OFFSET(int_curr_symbol ) }, + { _CITRUS_LC_MONETARY_SYM_CURRENCY_SYMBOL, OFFSET(currency_symbol ) }, + { _CITRUS_LC_MONETARY_SYM_MON_DECIMAL_POINT, OFFSET(mon_decimal_point ) }, + { _CITRUS_LC_MONETARY_SYM_MON_THOUSANDS_SEP, OFFSET(mon_thousands_sep ) }, + { _CITRUS_LC_MONETARY_SYM_MON_GROUPING, OFFSET(mon_grouping ) }, + { _CITRUS_LC_MONETARY_SYM_POSITIVE_SIGN, OFFSET(positive_sign ) }, + { _CITRUS_LC_MONETARY_SYM_NEGATIVE_SIGN, OFFSET(negative_sign ) }, + { NULL, (size_t)0 } +}; +static const struct _citrus_LC_MONETARY_key keys_char[] = { + { _CITRUS_LC_MONETARY_SYM_INT_FRAC_DIGITS, OFFSET(int_frac_digits ) }, + { _CITRUS_LC_MONETARY_SYM_FRAC_DIGITS, OFFSET(frac_digits ) }, + { _CITRUS_LC_MONETARY_SYM_P_CS_PRECEDES, OFFSET(p_cs_precedes ) }, + { _CITRUS_LC_MONETARY_SYM_P_SEP_BY_SPACE, OFFSET(p_sep_by_space ) }, + { _CITRUS_LC_MONETARY_SYM_N_CS_PRECEDES, OFFSET(n_cs_precedes ) }, + { _CITRUS_LC_MONETARY_SYM_N_SEP_BY_SPACE, OFFSET(n_sep_by_space ) }, + { _CITRUS_LC_MONETARY_SYM_P_SIGN_POSN, OFFSET(p_sign_posn ) }, + { _CITRUS_LC_MONETARY_SYM_N_SIGN_POSN, OFFSET(n_sign_posn ) }, + { _CITRUS_LC_MONETARY_SYM_INT_P_CS_PRECEDES, OFFSET(int_p_cs_precedes ) }, + { _CITRUS_LC_MONETARY_SYM_INT_N_CS_PRECEDES, OFFSET(int_n_cs_precedes ) }, + { _CITRUS_LC_MONETARY_SYM_INT_P_SEP_BY_SPACE, OFFSET(int_p_sep_by_space) }, + { _CITRUS_LC_MONETARY_SYM_INT_N_SEP_BY_SPACE, OFFSET(int_n_sep_by_space) }, + { _CITRUS_LC_MONETARY_SYM_INT_P_SIGN_POSN, OFFSET(int_p_sign_posn ) }, + { _CITRUS_LC_MONETARY_SYM_INT_N_SIGN_POSN, OFFSET(int_n_sign_posn ) }, + { NULL, (size_t)0 } +}; + +static __inline int +_citrus_LC_MONETARY_init_normal(_MonetaryLocale * __restrict data, + struct _citrus_db * __restrict db) +{ + const struct _citrus_LC_MONETARY_key *key; + char **p_string, *p_char; + const char *s; + uint8_t u8; + + _DIAGASSERT(data != NULL); + _DIAGASSERT(db != NULL); + + memset(data, 0, sizeof(*data)); + for (key = &keys_string[0]; key->name != NULL; ++key) { + if (_db_lookupstr_by_s(db, key->name, &s, NULL)) + goto fatal; + p_string = (char **)(void *) + (((char *)(void *)data) + key->offset); + *p_string = strdup(s); + if (*p_string == NULL) + goto fatal; + } + for (key = &keys_char[0]; key->name != NULL; ++key) { + if (_db_lookup8_by_s(db, key->name, &u8, NULL)) + goto fatal; + p_char = ((char *)(void *)data) + key->offset; + *p_char = (char)(unsigned char)u8; + } + _CITRUS_FIXUP_CHAR_MAX_MD(data->mon_grouping); + + return 0; + +fatal: + _citrus_LC_MONETARY_uninit(data); + return EFTYPE; +} + +static __inline int +_citrus_LC_MONETARY_init_fallback(_MonetaryLocale * __restrict data, + struct _memstream * __restrict ms) +{ + const struct _citrus_LC_MONETARY_key *key; + char **p_string, *p_char; + const char *s; + size_t n; + char *t; + long int l; + + _DIAGASSERT(data != NULL); + _DIAGASSERT(ms != NULL); + + memset(data, 0, sizeof(*data)); + for (key = &keys_string[0]; key->name != NULL; ++key) { + if ((s = _memstream_getln(ms, &n)) == NULL) + goto fatal; + p_string = (char **)(void *) + (((char *)(void *)data) + key->offset); + *p_string = strndup(s, n - 1); + if (*p_string == NULL) + goto fatal; + } + for (key = &keys_char[0]; key->name != NULL; ++key) { + if ((s = _memstream_getln(ms, &n)) == NULL) + goto fatal; + t = strndup(s, n - 1); + if (t == NULL) + goto fatal; + s = (const char *)t; + l = _bcs_strtol(s, &t, 0); + if (s == t || l < 0 || l > 0x7fL) { + free(t); + goto fatal; + } + free(t); + p_char = ((char *)(void *)data) + key->offset; + *p_char = (char)(l & 0x7fL); + } + data->mon_grouping = + __fix_locale_grouping_str(data->mon_grouping); + return 0; + +fatal: + _citrus_LC_MONETARY_uninit(data); + return EFTYPE; +} + +/* + * macro required by citrus_lc_template.h + */ +#define _CATEGORY_DB "LC_MONETARY" +#define _CATEGORY_MAGIC _CITRUS_LC_MONETARY_MAGIC_1 + +#include "citrus_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_citrus_LC_MONETARY_); Index: lib/libc/citrus/citrus_lc_monetary.h =================================================================== RCS file: lib/libc/citrus/citrus_lc_monetary.h diff -N lib/libc/citrus/citrus_lc_monetary.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_monetary.h 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,64 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _CITRUS_LC_MONETARY_H_ +#define _CITRUS_LC_MONETARY_H_ + +/* + * + */ +#define _CITRUS_LC_MONETARY_MAGIC_1 "CtrsMO10" +#define _CITRUS_LC_MONETARY_SYM_VERSION "version" +#define _CITRUS_LC_MONETARY_VERSION 0x00000001 + +/* + * + */ +#define _CITRUS_LC_MONETARY_SYM_INT_CURR_SYMBOL "int_curr_symbol" +#define _CITRUS_LC_MONETARY_SYM_CURRENCY_SYMBOL "currency_symbol" +#define _CITRUS_LC_MONETARY_SYM_MON_DECIMAL_POINT "mon_decimal_point" +#define _CITRUS_LC_MONETARY_SYM_MON_THOUSANDS_SEP "mon_thousands_sep" +#define _CITRUS_LC_MONETARY_SYM_MON_GROUPING "mon_grouping" +#define _CITRUS_LC_MONETARY_SYM_POSITIVE_SIGN "positive_sign" +#define _CITRUS_LC_MONETARY_SYM_NEGATIVE_SIGN "negative_sign" +#define _CITRUS_LC_MONETARY_SYM_INT_FRAC_DIGITS "int_frac_digits" +#define _CITRUS_LC_MONETARY_SYM_FRAC_DIGITS "frac_digits" +#define _CITRUS_LC_MONETARY_SYM_P_CS_PRECEDES "p_cs_precedes" +#define _CITRUS_LC_MONETARY_SYM_P_SEP_BY_SPACE "p_sep_by_space" +#define _CITRUS_LC_MONETARY_SYM_N_CS_PRECEDES "n_cs_precedes" +#define _CITRUS_LC_MONETARY_SYM_N_SEP_BY_SPACE "n_sep_by_space" +#define _CITRUS_LC_MONETARY_SYM_P_SIGN_POSN "p_sign_posn" +#define _CITRUS_LC_MONETARY_SYM_N_SIGN_POSN "n_sign_posn" +#define _CITRUS_LC_MONETARY_SYM_INT_P_CS_PRECEDES "int_p_cs_precedes" +#define _CITRUS_LC_MONETARY_SYM_INT_N_CS_PRECEDES "int_n_cs_precedes" +#define _CITRUS_LC_MONETARY_SYM_INT_P_SEP_BY_SPACE "int_p_sep_by_space" +#define _CITRUS_LC_MONETARY_SYM_INT_N_SEP_BY_SPACE "int_n_sep_by_space" +#define _CITRUS_LC_MONETARY_SYM_INT_P_SIGN_POSN "int_p_sign_posn" +#define _CITRUS_LC_MONETARY_SYM_INT_N_SIGN_POSN "int_n_sign_posn" + +#endif /*_CITRUS_LC_MONETARY_H_*/ Index: lib/libc/citrus/citrus_lc_numeric.c =================================================================== RCS file: lib/libc/citrus/citrus_lc_numeric.c diff -N lib/libc/citrus/citrus_lc_numeric.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_numeric.c 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,169 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "namespace.h" +#include "reentrant.h" +#include +#include +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "citrus_namespace.h" +#include "citrus_types.h" +#include "citrus_bcs.h" +#include "citrus_region.h" +#include "citrus_lookup.h" +#include "citrus_aliasname_local.h" +#include "citrus_module.h" +#include "citrus_mmap.h" +#include "citrus_hash.h" +#include "citrus_db.h" +#include "citrus_db_hash.h" +#include "citrus_memstream.h" +#include "rune.h" + +#include "fix_grouping.h" +#include "citrus_fix_grouping.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_citrus_LC_NUMERIC_, name) + +#include "nb_lc_numeric_misc.h" +#include "citrus_lc_template_decl.h" + +static __inline void +_citrus_LC_NUMERIC_uninit(_NumericLocale *data) +{ + free(__UNCONST(data->decimal_point)); + free(__UNCONST(data->thousands_sep)); + free(__UNCONST(data->grouping)); +} + +#include "citrus_lc_numeric.h" + +struct _citrus_LC_NUMERIC_key { + const char *name; + size_t offset; +}; + +#define OFFSET(field) (offsetof(_NumericLocale, field)) +static const struct _citrus_LC_NUMERIC_key keys[] = { + { _CITRUS_LC_NUMERIC_SYM_DECIMAL_POINT, OFFSET(decimal_point) }, + { _CITRUS_LC_NUMERIC_SYM_THOUSANDS_SEP, OFFSET(thousands_sep) }, + { _CITRUS_LC_NUMERIC_SYM_GROUPING, OFFSET(grouping ) }, + { NULL, 0 } +}; + +static __inline int +_citrus_LC_NUMERIC_init_normal(_NumericLocale * __restrict data, + struct _citrus_db * __restrict db) +{ + const struct _citrus_LC_NUMERIC_key *key; + char **p; + const char *s; + + _DIAGASSERT(data != NULL); + _DIAGASSERT(db != NULL); + + memset(data, 0, sizeof(*data)); + for (key = &keys[0]; key->name != NULL; ++key) { + if (_db_lookupstr_by_s(db, key->name, &s, NULL)) + goto fatal; + p = (char **)(void *) + (((char *)(void *)data) + key->offset); + *p = strdup(s); + if (*p == NULL) + goto fatal; + } + _CITRUS_FIXUP_CHAR_MAX_MD(data->grouping); + + return 0; + +fatal: + _citrus_LC_NUMERIC_uninit(data); + return EFTYPE; +} + +static __inline int +_citrus_LC_NUMERIC_init_fallback(_NumericLocale * __restrict data, + struct _memstream * __restrict ms) +{ + const struct _citrus_LC_NUMERIC_key *key; + char **p; + const char *s; + size_t n; + + _DIAGASSERT(data != NULL); + _DIAGASSERT(ms != NULL); + + memset(data, 0, sizeof(*data)); + for (key = &keys[0]; key->name != NULL; ++key) { + if ((s = _memstream_getln(ms, &n)) == NULL) + goto fatal; + p = (char **)(void *) + (((char *)(void *)data) + key->offset); + *p = strndup(s, n - 1); + if (*p == NULL) + goto fatal; + } + data->grouping = + __fix_locale_grouping_str(data->grouping); + + return 0; + +fatal: + _citrus_LC_NUMERIC_uninit(data); + return EFTYPE; +} + +/* + * macro required by citrus_lc_template.h + */ +#define _CATEGORY_DB "LC_NUMERIC" +#define _CATEGORY_MAGIC _CITRUS_LC_NUMERIC_MAGIC_1 + +#include "citrus_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_citrus_LC_NUMERIC_); Index: lib/libc/citrus/citrus_lc_numeric.h =================================================================== RCS file: lib/libc/citrus/citrus_lc_numeric.h diff -N lib/libc/citrus/citrus_lc_numeric.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_numeric.h 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,46 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _CITRUS_LC_NUMERIC_H_ +#define _CITRUS_LC_NUMERIC_H_ + +/* + * + */ +#define _CITRUS_LC_NUMERIC_MAGIC_1 "CtrsNU10" +#define _CITRUS_LC_NUMERIC_SYM_VERSION "version" +#define _CITRUS_LC_NUMERIC_VERSION 0x00000001 + +/* + * + */ +#define _CITRUS_LC_NUMERIC_SYM_DECIMAL_POINT "decimal_point" +#define _CITRUS_LC_NUMERIC_SYM_THOUSANDS_SEP "thousands_sep" +#define _CITRUS_LC_NUMERIC_SYM_GROUPING "grouping" + +#endif /*_CITRUS_LC_NUMERIC_H_*/ Index: lib/libc/citrus/citrus_lc_template.h =================================================================== RCS file: lib/libc/citrus/citrus_lc_template.h diff -N lib/libc/citrus/citrus_lc_template.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_template.h 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,74 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _CITRUS_LC_TEMPLATE_H_ +#define _CITRUS_LC_TEMPLATE_H_ + +static __inline int +_PREFIX(create_impl)(const char * __restrict root, + const char * __restrict name, _CATEGORY_TYPE ** __restrict pdata) +{ + char path[PATH_MAX + 1]; + int ret; + struct _region file; + struct _citrus_db *db; + struct _memstream ms; + _CATEGORY_TYPE *data; + + snprintf(path, sizeof(path), + "%s/%s/" _CATEGORY_DB, root, name); + ret = _map_file(&file, path); + if (ret) { + ret = ENOENT; + } else { + data = malloc(sizeof(*data)); + if (!data) { + ret = ENOMEM; + } else { + ret = _db_open(&db, &file, _CATEGORY_MAGIC, + &_db_hash_std, NULL); + if (!ret) { + ret = _PREFIX(init_normal)(data, db); + _db_close(db); + } else { + _memstream_bind(&ms, &file); + ret = _PREFIX(init_fallback)(data, &ms); + } + if (!ret) + *pdata = data; + else + free(data); + } + _unmap_file(&file); + } + return ret; +} + +#include "nb_lc_template.h" + +#endif /* _CITRUS_LC_TEMPLATE_H_ */ Index: lib/libc/citrus/citrus_lc_template_decl.h =================================================================== RCS file: lib/libc/citrus/citrus_lc_template_decl.h diff -N lib/libc/citrus/citrus_lc_template_decl.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_template_decl.h 14 Dec 2008 18:55:45 -0000 @@ -0,0 +1,42 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _CITRUS_LC_TEMPLATE_DECL_H_ +#define _CITRUS_LC_TEMPLATE_DECL_H_ + +#include "nb_lc_template_decl.h" + +static __inline int +_PREFIX(init_normal)(_CATEGORY_TYPE * __restrict, + struct _citrus_db * __restrict db); + +static __inline int +_PREFIX(init_fallback)(_CATEGORY_TYPE * __restrict, + struct _memstream * __restrict); + +#endif /*_CITRUS_LC_TEMPLATE_DECL_H_*/ Index: lib/libc/citrus/citrus_lc_time.c =================================================================== RCS file: lib/libc/citrus/citrus_lc_time.c diff -N lib/libc/citrus/citrus_lc_time.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_time.c 14 Dec 2008 18:55:46 -0000 @@ -0,0 +1,214 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "namespace.h" +#include "reentrant.h" +#include +#include +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "citrus_namespace.h" +#include "citrus_types.h" +#include "citrus_bcs.h" +#include "citrus_region.h" +#include "citrus_lookup.h" +#include "citrus_aliasname_local.h" +#include "citrus_module.h" +#include "citrus_mmap.h" +#include "citrus_hash.h" +#include "citrus_db.h" +#include "citrus_db_hash.h" +#include "citrus_memstream.h" +#include "rune.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_citrus_LC_TIME_, name) + +#include "nb_lc_time_misc.h" +#include "citrus_lc_template_decl.h" + +static __inline void +_citrus_LC_TIME_uninit(_TimeLocale *data) +{ + size_t i, j; + + _DIAGASSERT(data != NULL); + + for (i = ABDAY_IDX(ABDAY_1), j = ABDAY_IDX(ABDAY_7); i <= j; ++i) + free(__UNCONST(data->abday[i])); + for (i = DAY_IDX(DAY_1), j = DAY_IDX(DAY_7); i <= j; ++i) + free(__UNCONST(data->day[i])); + for (i = ABMON_IDX(ABMON_1), j = ABMON_IDX(ABMON_12); i <= j; ++i) + free(__UNCONST(data->abmon[i])); + for (i = MON_IDX(MON_1), j = MON_IDX(MON_12); i <= j; ++i) + free(__UNCONST(data->mon[i])); + for (i = AM_PM_IDX(AM_STR), j = AM_PM_IDX(PM_STR); i <= j; ++i) + free(__UNCONST(data->am_pm[i])); + free(__UNCONST(data->d_t_fmt)); + free(__UNCONST(data->d_fmt)); + free(__UNCONST(data->t_fmt)); + free(__UNCONST(data->t_fmt_ampm)); +} + +#include "citrus_lc_time.h" + +struct _citrus_LC_TIME_key { + const char *name; + size_t offset; +}; + +#define OFFSET(field) offsetof(_TimeLocale, field) +static const struct _citrus_LC_TIME_key keys[] = { + { _CITRUS_LC_TIME_SYM_ABDAY_1, OFFSET(abday[ABDAY_IDX(ABDAY_1)] ) }, + { _CITRUS_LC_TIME_SYM_ABDAY_2, OFFSET(abday[ABDAY_IDX(ABDAY_2)] ) }, + { _CITRUS_LC_TIME_SYM_ABDAY_3, OFFSET(abday[ABDAY_IDX(ABDAY_3)] ) }, + { _CITRUS_LC_TIME_SYM_ABDAY_4, OFFSET(abday[ABDAY_IDX(ABDAY_4)] ) }, + { _CITRUS_LC_TIME_SYM_ABDAY_5, OFFSET(abday[ABDAY_IDX(ABDAY_5)] ) }, + { _CITRUS_LC_TIME_SYM_ABDAY_6, OFFSET(abday[ABDAY_IDX(ABDAY_6)] ) }, + { _CITRUS_LC_TIME_SYM_ABDAY_7, OFFSET(abday[ABDAY_IDX(ABDAY_7)] ) }, + { _CITRUS_LC_TIME_SYM_DAY_1, OFFSET(day[DAY_IDX(DAY_1)] ) }, + { _CITRUS_LC_TIME_SYM_DAY_2, OFFSET(day[DAY_IDX(DAY_2)] ) }, + { _CITRUS_LC_TIME_SYM_DAY_3, OFFSET(day[DAY_IDX(DAY_3)] ) }, + { _CITRUS_LC_TIME_SYM_DAY_4, OFFSET(day[DAY_IDX(DAY_4)] ) }, + { _CITRUS_LC_TIME_SYM_DAY_5, OFFSET(day[DAY_IDX(DAY_5)] ) }, + { _CITRUS_LC_TIME_SYM_DAY_6, OFFSET(day[DAY_IDX(DAY_6)] ) }, + { _CITRUS_LC_TIME_SYM_DAY_7, OFFSET(day[DAY_IDX(DAY_7)] ) }, + { _CITRUS_LC_TIME_SYM_ABMON_1, OFFSET(abmon[ABMON_IDX(ABMON_1)] ) }, + { _CITRUS_LC_TIME_SYM_ABMON_2, OFFSET(abmon[ABMON_IDX(ABMON_2)] ) }, + { _CITRUS_LC_TIME_SYM_ABMON_3, OFFSET(abmon[ABMON_IDX(ABMON_3)] ) }, + { _CITRUS_LC_TIME_SYM_ABMON_4, OFFSET(abmon[ABMON_IDX(ABMON_4)] ) }, + { _CITRUS_LC_TIME_SYM_ABMON_5, OFFSET(abmon[ABMON_IDX(ABMON_5)] ) }, + { _CITRUS_LC_TIME_SYM_ABMON_6, OFFSET(abmon[ABMON_IDX(ABMON_6)] ) }, + { _CITRUS_LC_TIME_SYM_ABMON_7, OFFSET(abmon[ABMON_IDX(ABMON_7)] ) }, + { _CITRUS_LC_TIME_SYM_ABMON_8, OFFSET(abmon[ABMON_IDX(ABMON_8)] ) }, + { _CITRUS_LC_TIME_SYM_ABMON_9, OFFSET(abmon[ABMON_IDX(ABMON_9)] ) }, + { _CITRUS_LC_TIME_SYM_ABMON_10, OFFSET(abmon[ABMON_IDX(ABMON_10)]) }, + { _CITRUS_LC_TIME_SYM_ABMON_11, OFFSET(abmon[ABMON_IDX(ABMON_11)]) }, + { _CITRUS_LC_TIME_SYM_ABMON_12, OFFSET(abmon[ABMON_IDX(ABMON_12)]) }, + { _CITRUS_LC_TIME_SYM_MON_1, OFFSET(mon[MON_IDX(MON_1)] ) }, + { _CITRUS_LC_TIME_SYM_MON_2, OFFSET(mon[MON_IDX(MON_2)] ) }, + { _CITRUS_LC_TIME_SYM_MON_3, OFFSET(mon[MON_IDX(MON_3)] ) }, + { _CITRUS_LC_TIME_SYM_MON_4, OFFSET(mon[MON_IDX(MON_4)] ) }, + { _CITRUS_LC_TIME_SYM_MON_5, OFFSET(mon[MON_IDX(MON_5)] ) }, + { _CITRUS_LC_TIME_SYM_MON_6, OFFSET(mon[MON_IDX(MON_6)] ) }, + { _CITRUS_LC_TIME_SYM_MON_7, OFFSET(mon[MON_IDX(MON_7)] ) }, + { _CITRUS_LC_TIME_SYM_MON_8, OFFSET(mon[MON_IDX(MON_8)] ) }, + { _CITRUS_LC_TIME_SYM_MON_9, OFFSET(mon[MON_IDX(MON_9)] ) }, + { _CITRUS_LC_TIME_SYM_MON_10, OFFSET(mon[MON_IDX(MON_10)] ) }, + { _CITRUS_LC_TIME_SYM_MON_11, OFFSET(mon[MON_IDX(MON_11)] ) }, + { _CITRUS_LC_TIME_SYM_MON_12, OFFSET(mon[MON_IDX(MON_12)] ) }, + { _CITRUS_LC_TIME_SYM_AM_STR, OFFSET(am_pm[AM_PM_IDX(AM_STR)] ) }, + { _CITRUS_LC_TIME_SYM_PM_STR, OFFSET(am_pm[AM_PM_IDX(PM_STR)] ) }, + { _CITRUS_LC_TIME_SYM_D_T_FMT, OFFSET(d_t_fmt ) }, + { _CITRUS_LC_TIME_SYM_D_FMT, OFFSET(d_fmt ) }, + { _CITRUS_LC_TIME_SYM_T_FMT, OFFSET(t_fmt ) }, + { _CITRUS_LC_TIME_SYM_T_FMT, OFFSET(t_fmt_ampm ) }, + { NULL, 0 } +}; + +static __inline int +_citrus_LC_TIME_init_normal(_TimeLocale * __restrict data, + struct _citrus_db * __restrict db) +{ + const struct _citrus_LC_TIME_key *key; + char **p; + const char *s; + + _DIAGASSERT(data != NULL); + _DIAGASSERT(db != NULL); + + memset(data, 0, sizeof(*data)); + for (key = &keys[0]; key->name != NULL; ++key) { + if (_db_lookupstr_by_s(db, key->name, &s, NULL)) + goto fatal; + p = (char **)(void *) + (((char *)(void *)data) + key->offset); + *p = strdup(s); + if (*p == NULL) + goto fatal; + } + return 0; + +fatal: + _citrus_LC_TIME_uninit(data); + return EFTYPE; +} + +static __inline int +_citrus_LC_TIME_init_fallback(_TimeLocale * __restrict data, + struct _memstream * __restrict ms) +{ + const struct _citrus_LC_TIME_key *key; + char **p; + const char *s; + size_t n; + + memset(data, 0, sizeof(*data)); + for (key = &keys[0]; key->name != NULL; ++key) { + if ((s = _memstream_getln(ms, &n)) == NULL) + goto fatal; + p = (char **)(void *) + (((char *)(void *)data) + key->offset); + *p = strndup(s, n - 1); + if (*p == NULL) + goto fatal; + } + return 0; + +fatal: + _citrus_LC_TIME_uninit(data); + return EFTYPE; +} + +/* + * macro required by citrus_lc_template.h + */ +#define _CATEGORY_DB "LC_TIME" +#define _CATEGORY_MAGIC _CITRUS_LC_TIME_MAGIC_1 + +#include "citrus_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_citrus_LC_TIME_); Index: lib/libc/citrus/citrus_lc_time.h =================================================================== RCS file: lib/libc/citrus/citrus_lc_time.h diff -N lib/libc/citrus/citrus_lc_time.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/citrus/citrus_lc_time.h 14 Dec 2008 18:55:46 -0000 @@ -0,0 +1,87 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _CITRUS_LC_TIME_H_ +#define _CITRUS_LC_TIME_H_ + +/* + * + */ +#define _CITRUS_LC_TIME_MAGIC_1 "CtrsTI10" +#define _CITRUS_LC_TIME_SYM_VERSION "version" +#define _CITRUS_LC_TIME_VERSION 0x00000001 + +/* + * + */ +#define _CITRUS_LC_TIME_SYM_ABDAY_1 "abday1" +#define _CITRUS_LC_TIME_SYM_ABDAY_2 "abday2" +#define _CITRUS_LC_TIME_SYM_ABDAY_3 "abday3" +#define _CITRUS_LC_TIME_SYM_ABDAY_4 "abday4" +#define _CITRUS_LC_TIME_SYM_ABDAY_5 "abday5" +#define _CITRUS_LC_TIME_SYM_ABDAY_6 "abday6" +#define _CITRUS_LC_TIME_SYM_ABDAY_7 "abday7" +#define _CITRUS_LC_TIME_SYM_DAY_1 "day1" +#define _CITRUS_LC_TIME_SYM_DAY_2 "day2" +#define _CITRUS_LC_TIME_SYM_DAY_3 "day3" +#define _CITRUS_LC_TIME_SYM_DAY_4 "day4" +#define _CITRUS_LC_TIME_SYM_DAY_5 "day5" +#define _CITRUS_LC_TIME_SYM_DAY_6 "day6" +#define _CITRUS_LC_TIME_SYM_DAY_7 "day7" +#define _CITRUS_LC_TIME_SYM_ABMON_1 "abmon_1" +#define _CITRUS_LC_TIME_SYM_ABMON_2 "abmon_2" +#define _CITRUS_LC_TIME_SYM_ABMON_3 "abmon_3" +#define _CITRUS_LC_TIME_SYM_ABMON_4 "abmon_4" +#define _CITRUS_LC_TIME_SYM_ABMON_5 "abmon_5" +#define _CITRUS_LC_TIME_SYM_ABMON_6 "abmon_6" +#define _CITRUS_LC_TIME_SYM_ABMON_7 "abmon_7" +#define _CITRUS_LC_TIME_SYM_ABMON_8 "abmon_8" +#define _CITRUS_LC_TIME_SYM_ABMON_9 "abmon_9" +#define _CITRUS_LC_TIME_SYM_ABMON_10 "abmon_10" +#define _CITRUS_LC_TIME_SYM_ABMON_11 "abmon_11" +#define _CITRUS_LC_TIME_SYM_ABMON_12 "abmon_12" +#define _CITRUS_LC_TIME_SYM_MON_1 "mon_1" +#define _CITRUS_LC_TIME_SYM_MON_2 "mon_2" +#define _CITRUS_LC_TIME_SYM_MON_3 "mon_3" +#define _CITRUS_LC_TIME_SYM_MON_4 "mon_4" +#define _CITRUS_LC_TIME_SYM_MON_5 "mon_5" +#define _CITRUS_LC_TIME_SYM_MON_6 "mon_6" +#define _CITRUS_LC_TIME_SYM_MON_7 "mon_7" +#define _CITRUS_LC_TIME_SYM_MON_8 "mon_8" +#define _CITRUS_LC_TIME_SYM_MON_9 "mon_9" +#define _CITRUS_LC_TIME_SYM_MON_10 "mon_10" +#define _CITRUS_LC_TIME_SYM_MON_11 "mon_11" +#define _CITRUS_LC_TIME_SYM_MON_12 "mon_12" +#define _CITRUS_LC_TIME_SYM_AM_STR "am_str" +#define _CITRUS_LC_TIME_SYM_PM_STR "pm_str" +#define _CITRUS_LC_TIME_SYM_D_T_FMT "d_t_fmt" +#define _CITRUS_LC_TIME_SYM_D_FMT "d_fmt" +#define _CITRUS_LC_TIME_SYM_T_FMT "t_fmt" +#define _CITRUS_LC_TIME_SYM_T_FMT_AMPM "t_fmt_ampm" + +#endif /*_CITRUS_LC_TIME_H_*/ Index: lib/libc/citrus/citrus_module.c =================================================================== RCS file: /cvsroot/src/lib/libc/citrus/citrus_module.c,v retrieving revision 1.7 diff -u -r1.7 citrus_module.c --- lib/libc/citrus/citrus_module.c 14 Jun 2008 16:01:07 -0000 1.7 +++ lib/libc/citrus/citrus_module.c 14 Dec 2008 18:55:46 -0000 @@ -101,6 +101,8 @@ #include #include #include +#include "citrus_namespace.h" +#include "citrus_bcs.h" #include "citrus_module.h" #include @@ -136,7 +138,7 @@ if (*cp < '0' || '9' < *cp) return 0; - dewey[n++] = (int)strtol(cp, &cp, 10); + dewey[n++] = (int)_bcs_strtol(cp, &cp, 10); } return n; Index: lib/libc/citrus/citrus_namespace.h =================================================================== RCS file: /cvsroot/src/lib/libc/citrus/citrus_namespace.h,v retrieving revision 1.6 diff -u -r1.6 citrus_namespace.h --- lib/libc/citrus/citrus_namespace.h 29 Oct 2005 18:02:04 -0000 1.6 +++ lib/libc/citrus/citrus_namespace.h 14 Dec 2008 18:55:46 -0000 @@ -56,6 +56,8 @@ #define _bcs_trunc_rws_len _citrus_bcs_trunc_rws_len #define _bcs_convert_to_lower _citrus_bcs_convert_to_lower #define _bcs_convert_to_upper _citrus_bcs_convert_to_upper +#define _bcs_strtol _citrus_bcs_strtol +#define _bcs_strtoul _citrus_bcs_strtoul #endif /* _CITRUS_BCS_NO_NAMESPACE */ /* citrus_csmapper */ Index: lib/libc/citrus/modules/citrus_euc.c =================================================================== RCS file: /cvsroot/src/lib/libc/citrus/modules/citrus_euc.c,v retrieving revision 1.12 diff -u -r1.12 citrus_euc.c --- lib/libc/citrus/modules/citrus_euc.c 14 Jun 2008 16:01:07 -0000 1.12 +++ lib/libc/citrus/modules/citrus_euc.c 14 Dec 2008 18:55:46 -0000 @@ -74,6 +74,7 @@ #include #include "citrus_namespace.h" +#include "citrus_bcs.h" #include "citrus_types.h" #include "citrus_module.h" #include "citrus_ctype.h" @@ -153,7 +154,7 @@ ei->mb_cur_max = 1; for (x = 0; x < 4; ++x) { - ei->count[x] = (int) strtol(v, (char **)&e, 0); + ei->count[x] = (int)_bcs_strtol(v, (char **)&e, 0); if (v == e || !(v = e) || ei->count[x]<1 || ei->count[x]>4) { return (EFTYPE); } @@ -161,14 +162,14 @@ ei->mb_cur_max = ei->count[x]; while (*v == ' ' || *v == '\t') ++v; - ei->bits[x] = (int) strtol(v, (char **)&e, 0); + ei->bits[x] = (int)_bcs_strtol(v, (char **)&e, 0); if (v == e || !(v = e)) { return (EFTYPE); } while (*v == ' ' || *v == '\t') ++v; } - ei->mask = (int)strtol(v, (char **)&e, 0); + ei->mask = (int)_bcs_strtol(v, (char **)&e, 0); if (v == e || !(v = e)) { return (EFTYPE); } Index: lib/libc/gen/Makefile.inc =================================================================== RCS file: /cvsroot/src/lib/libc/gen/Makefile.inc,v retrieving revision 1.165 diff -u -r1.165 Makefile.inc --- lib/libc/gen/Makefile.inc 5 Dec 2008 13:08:53 -0000 1.165 +++ lib/libc/gen/Makefile.inc 14 Dec 2008 18:55:46 -0000 @@ -154,3 +154,5 @@ MLINKS+=unvis.3 strunvis.3 unvis.3 strunvisx.3 MLINKS+=vis.3 svis.3 vis.3 strvis.3 vis.3 strvisx.3 vis.3 strsvis.3 \ vis.3 strsvisx.3 + +CPPFLAGS.isctype.c+= -I${LIBCDIR}/locale Index: lib/libc/gen/isctype.c =================================================================== RCS file: /cvsroot/src/lib/libc/gen/isctype.c,v retrieving revision 1.16 diff -u -r1.16 isctype.c --- lib/libc/gen/isctype.c 7 Aug 2003 16:42:52 -0000 1.16 +++ lib/libc/gen/isctype.c 14 Dec 2008 18:55:46 -0000 @@ -1,13 +1,8 @@ -/* $NetBSD: isctype.c,v 1.16 2003/08/07 16:42:52 agc Exp $ */ +/* $NetBSD$ */ -/* - * Copyright (c) 1989 The Regents of the University of California. +/*- + * Copyright (c)2008 Citrus Project, * All rights reserved. - * (c) UNIX System Laboratories, Inc. - * All or some portions of this file are derived from material licensed - * to the University of California by American Telephone and Telegraph - * Co. or Unix System Laboratories, Inc. and are reproduced herein with - * the permission of UNIX System Laboratories, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -17,14 +12,11 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) @@ -36,124 +28,88 @@ #include #if defined(LIBC_SCCS) && !defined(lint) -#if 0 -static char sccsid[] = "@(#)isctype.c 5.2 (Berkeley) 6/1/90"; -#else -__RCSID("$NetBSD: isctype.c,v 1.16 2003/08/07 16:42:52 agc Exp $"); -#endif +__RCSID("$NetBSD$"); #endif /* LIBC_SCCS and not lint */ -#define _ANSI_LIBRARY +#include "namespace.h" +#include #include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#if EOF != -1 +#error "EOF != -1" +#endif -#undef isalnum -int -isalnum(c) - int c; -{ - return((_ctype_ + 1)[c] & (_U|_L|_N)); -} - -#undef isalpha -int -isalpha(c) - int c; -{ - return((_ctype_ + 1)[c] & (_U|_L)); -} +#include "setlocale_local.h" -#undef isblank -int -isblank(c) - int c; -{ - return(c == ' ' || c == '\t'); -} +#define _CTYPE_TAB(table, i) \ + (((*_current_locale())->cache.table + 1)[i]) +#undef isalnum +#undef isalpha #undef iscntrl -int -iscntrl(c) - int c; -{ - return((_ctype_ + 1)[c] & _C); -} - #undef isdigit -int -isdigit(c) - int c; -{ - return((_ctype_ + 1)[c] & _N); -} - #undef isgraph -int -isgraph(c) - int c; -{ - return((_ctype_ + 1)[c] & (_P|_U|_L|_N)); -} - #undef islower -int -islower(c) - int c; -{ - return((_ctype_ + 1)[c] & _L); -} - #undef isprint -int -isprint(c) - int c; -{ - return((_ctype_ + 1)[c] & (_P|_U|_L|_N|_B)); -} - #undef ispunct -int -ispunct(c) - int c; -{ - return((_ctype_ + 1)[c] & _P); -} - #undef isspace +#undef isupper +#undef isxdigit + +#define _ISCTYPE_FUNC(name, bit) \ +int \ +is##name(int c) \ +{ \ + return (int)(_CTYPE_TAB(ctype_tab, c) & (bit)); \ +} + +_ISCTYPE_FUNC(alnum, _U|_L|_N ) +_ISCTYPE_FUNC(alpha, _U|_L ) +_ISCTYPE_FUNC(cntrl, _C ) +_ISCTYPE_FUNC(digit, _N ) +_ISCTYPE_FUNC(graph, _P|_U|_L|_N ) +_ISCTYPE_FUNC(lower, _L ) +_ISCTYPE_FUNC(print, _P|_U|_L|_N|_B) +_ISCTYPE_FUNC(punct, _P ) +_ISCTYPE_FUNC(space, _S ) +_ISCTYPE_FUNC(upper, _U ) +_ISCTYPE_FUNC(xdigit, _N|_X ) + +#undef isblank int -isspace(c) - int c; +isblank(int c) { - return((_ctype_ + 1)[c] & _S); + /* XXX: FIXME */ + return c == ' ' || c == '\t'; } -#undef isupper +#undef toupper int -isupper(c) - int c; +toupper(int c) { - return((_ctype_ + 1)[c] & _U); + return (int)_CTYPE_TAB(toupper_tab, c); } -#undef isxdigit +#undef tolower int -isxdigit(c) - int c; +tolower(int c) { - return((_ctype_ + 1)[c] & (_N|_X)); + return (int)_CTYPE_TAB(tolower_tab, c); } #undef _toupper int -_toupper(c) - int c; +_toupper(int c) { return (c - 'a' + 'A'); } #undef _tolower int -_tolower(c) - int c; +_tolower(int c) { return (c - 'A' + 'a'); } Index: lib/libc/gen/tolower_.c =================================================================== RCS file: /cvsroot/src/lib/libc/gen/tolower_.c,v retrieving revision 1.9 diff -u -r1.9 tolower_.c --- lib/libc/gen/tolower_.c 26 Jul 2003 19:24:45 -0000 1.9 +++ lib/libc/gen/tolower_.c 14 Dec 2008 18:55:46 -0000 @@ -54,11 +54,3 @@ }; const short *_tolower_tab_ = _C_tolower_; - -#undef tolower -int -tolower(c) - int c; -{ - return((_tolower_tab_ + 1)[c]); -} Index: lib/libc/gen/toupper_.c =================================================================== RCS file: /cvsroot/src/lib/libc/gen/toupper_.c,v retrieving revision 1.9 diff -u -r1.9 toupper_.c --- lib/libc/gen/toupper_.c 26 Jul 2003 19:24:45 -0000 1.9 +++ lib/libc/gen/toupper_.c 14 Dec 2008 18:55:46 -0000 @@ -54,11 +54,3 @@ }; const short *_toupper_tab_ = _C_toupper_; - -#undef toupper -int -toupper(c) - int c; -{ - return((_toupper_tab_ + 1)[c]); -} Index: lib/libc/iconv/Makefile.inc =================================================================== RCS file: /cvsroot/src/lib/libc/iconv/Makefile.inc,v retrieving revision 1.2 diff -u -r1.2 Makefile.inc --- lib/libc/iconv/Makefile.inc 4 Jul 2003 06:05:30 -0000 1.2 +++ lib/libc/iconv/Makefile.inc 14 Dec 2008 18:55:46 -0000 @@ -7,5 +7,7 @@ MLINKS+=iconv.3 iconv_open.3 iconv.3 iconv_close.3 .if ${CITRUS} == "yes" -CPPFLAGS+= -DCITRUS_ICONV +CPPFLAGS.iconv.c+= -DHAVE_CITRUS -I${LIBCDIR}/citrus +.else +CPPFLAGS.iconv.c+= -UHAVE_CITRUS .endif Index: lib/libc/iconv/iconv.c =================================================================== RCS file: /cvsroot/src/lib/libc/iconv/iconv.c,v retrieving revision 1.6 diff -u -r1.6 iconv.c --- lib/libc/iconv/iconv.c 3 Nov 2006 20:16:28 -0000 1.6 +++ lib/libc/iconv/iconv.c 14 Dec 2008 18:55:46 -0000 @@ -45,13 +45,13 @@ __weak_alias(iconv_close, _iconv_close) #endif -#ifdef CITRUS_ICONV +#ifdef HAVE_CITRUS #include -#include -#include -#include -#include -#include +#include "citrus_types.h" +#include "citrus_module.h" +#include "citrus_esdb.h" +#include "citrus_hash.h" +#include "citrus_iconv.h" #define ISBADF(_h_) (!(_h_) || (_h_) == (iconv_t)-1) Index: lib/libc/locale/Makefile.inc =================================================================== RCS file: /cvsroot/src/lib/libc/locale/Makefile.inc,v retrieving revision 1.52 diff -u -r1.52 Makefile.inc --- lib/libc/locale/Makefile.inc 17 May 2008 03:49:54 -0000 1.52 +++ lib/libc/locale/Makefile.inc 14 Dec 2008 18:55:46 -0000 @@ -5,17 +5,12 @@ .PATH: ${ARCHDIR}/locale ${.CURDIR}/locale SRCS+= _def_messages.c _def_monetary.c _def_numeric.c _def_time.c \ - ctypeio.c lcmessages.c lcmonetary.c lcnumeric.c lctime.c \ - localeconv.c localeio.c nl_langinfo.c setlocale.c setlocale1.c \ - setlocale32.c __mb_cur_max.c wcscoll.c wcsftime.c \ + setlocale.c setlocale1.c setlocale32.c __mb_cur_max.c \ + current_locale.c global_locale.c fix_grouping.c \ + localeconv.c nl_langinfo.c \ + generic_lc_all.c dummy_lc_collate.c \ wcstol.c wcstoll.c wcstoimax.c wcstoul.c wcstoull.c wcstoumax.c \ - wcsxfrm.c aliasname.c -MAN+= nl_langinfo.3 setlocale.3 wcstol.3 wcscoll.3 wcsxfrm.3 - -SRCS+= wcstod.c wcstof.c wcstold.c -MAN+= wcstod.3 - -MLINKS+=setlocale.3 localeconv.3 + wcstod.c wcstof.c wcstold.c wcscoll.c wcsxfrm.c wcsftime.c .if ${CITRUS} == "no" RUNE= no @@ -25,19 +20,41 @@ .if ${RUNE} == "no" # singlebyte locale - dummy -SRCS+= multibyte_sb.c iswctype_sb.c -CPPFLAGS+=-UWITH_RUNE +CPPFLAGS+= -UWITH_RUNE +SRCS+= aliasname.c bsdctype.c localeio.c \ + multibyte_sb.c iswctype_sb.c \ + localeio_lc_ctype.c localeio_lc_monetary.c \ + localeio_lc_numeric.c localeio_lc_time.c .else # citrus multibyte locale support # we have quirk for libc.a - see the last part of lib/libc/Makefile -CPPFLAGS+=-DWITH_RUNE -I${.CURDIR} -SRCS+= ___runetype_mb.c _wctrans.c iswctype.c multibyte_c90.c \ - multibyte_amd1.c rune.c runeglue.c runetable.c setrunelocale.c +CPPFLAGS+= -DWITH_RUNE -I${.CURDIR} +SRCS+= _wctrans.c _wctype.c rune.c runeglue.c runetable.c \ + multibyte_c90.c multibyte_amd1.c iswctype_mb.c +CPPFLAGS.rune.c+= -I${LIBCDIR}/citrus +CPPFLAGS.runeglue.c+= -I${LIBCDIR}/citrus +CPPFLAGS.runetable.c+= -I${LIBCDIR}/citrus +CPPFLAGS.multibyte_c90.c+= -I${LIBCDIR}/citrus +CPPFLAGS.multibyte_amd1.c+= -I${LIBCDIR}/citrus .endif -MAN+= btowc.3 iswalnum.3 iswctype.3 towlower.3 towctrans.3 mblen.3 mbrlen.3 \ - mbrtowc.3 mbsinit.3 mbsrtowcs.3 mbstowcs.3 mbtowc.3 wcrtomb.3 wcwidth.3 \ - wcsftime.3 wcsrtombs.3 wcstombs.3 wctob.3 wctomb.3 wctrans.3 wctype.3 +MAN+= setlocale.3 nl_langinfo.3 + +MAN+= mbtowc.3 mbstowcs.3 wctomb.3 wcstombs.3 mblen.3 \ + +MAN+= btowc.3 mbrtowc.3 mbsrtowcs.3 \ + wctob.3 wcrtomb.3 wcsrtombs.3 \ + mbrlen.3 mbsinit.3 + +MAN+= iswalnum.3 wctype.3 iswctype.3 \ + towlower.3 wctrans.3 towctrans.3 \ + wcwidth.3 + +MAN+= wcstol.3 wcstod.3 \ + wcscoll.3 wcsxfrm.3 \ + wcsftime.3 + +MLINKS+=setlocale.3 localeconv.3 MLINKS+=iswalnum.3 iswalpha.3 iswalnum.3 iswblank.3 \ iswalnum.3 iswcntrl.3 iswalnum.3 iswdigit.3 \ @@ -45,7 +62,9 @@ iswalnum.3 iswprint.3 iswalnum.3 iswpunct.3 \ iswalnum.3 iswspace.3 iswalnum.3 iswupper.3 \ iswalnum.3 iswxdigit.3 + MLINKS+=towlower.3 towupper.3 + MLINKS+=wcstod.3 wcstof.3 wcstod.3 wcstold.3 MLINKS+=wcstol.3 wcstoll.3 wcstol.3 wcstoimax.3 \ wcstol.3 wcstoul.3 wcstol.3 wcstoull.3 wcstol.3 wcstoumax.3 Index: lib/libc/locale/___runetype_mb.c =================================================================== RCS file: lib/libc/locale/___runetype_mb.c diff -N lib/libc/locale/___runetype_mb.c --- lib/libc/locale/___runetype_mb.c 10 Feb 2005 19:19:57 -0000 1.10 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,73 +0,0 @@ -/* $NetBSD: ___runetype_mb.c,v 1.10 2005/02/10 19:19:57 tnozaki Exp $ */ - -/*- - * Copyright (c) 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Paul Borman at Krystal Technologies. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include -#if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: ___runetype_mb.c,v 1.10 2005/02/10 19:19:57 tnozaki Exp $"); -#endif /* LIBC_SCCS and not lint */ - -#include -#include "rune.h" -#include "rune_local.h" - -_RuneType -___runetype_mb(c) - wint_t c; -{ - __nbrune_t c0; - uint32_t x; - _RuneRange *rr; - _RuneEntry *base, *re; - - if (c == WEOF) - return (0U); - - c0 = (__nbrune_t)c; /* XXX assumes wint_t = int */ - rr = &_CurrentRuneLocale->rl_runetype_ext; - base = rr->rr_rune_ranges; - for (x = rr->rr_nranges; x; x >>= 1) { - re = base + (x >> 1); - if (re->re_min <= c0 && re->re_max >= c0) { - if (re->re_rune_types) - return (re->re_rune_types[c0 - re->re_min]); - else - return (re->re_map); - } else if (c0 > re->re_max) { - base = re + 1; - x--; - } - } - - return (0U); -} Index: lib/libc/locale/_wctrans.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/_wctrans.c,v retrieving revision 1.6 diff -u -r1.6 _wctrans.c --- lib/libc/locale/_wctrans.c 10 Feb 2005 19:19:57 -0000 1.6 +++ lib/libc/locale/_wctrans.c 14 Dec 2008 18:55:46 -0000 @@ -88,7 +88,7 @@ } /* - * _wctrans_ext: + * _towctrans_ext: * translate a character (extended part) */ wint_t Index: lib/libc/locale/_wctrans_local.h =================================================================== RCS file: /cvsroot/src/lib/libc/locale/_wctrans_local.h,v retrieving revision 1.2 diff -u -r1.2 _wctrans_local.h --- lib/libc/locale/_wctrans_local.h 6 Apr 2003 18:33:23 -0000 1.2 +++ lib/libc/locale/_wctrans_local.h 14 Dec 2008 18:55:47 -0000 @@ -29,8 +29,10 @@ #ifndef _WCTRANS_LOCAL_H_ #define _WCTRANS_LOCAL_H_ +__BEGIN_DECLS wint_t _towctrans_ext(wint_t, _WCTransEntry *); void _wctrans_init(_RuneLocale *); +__END_DECLS static __inline wint_t _towctrans(wint_t c, _WCTransEntry *te) @@ -55,4 +57,4 @@ return (&rl->rl_wctrans[_WCTRANS_INDEX_UPPER]); } -#endif +#endif /*_WCTRANS_LOCAL_H_*/ Index: lib/libc/locale/_wctype.c =================================================================== RCS file: lib/libc/locale/_wctype.c diff -N lib/libc/locale/_wctype.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/_wctype.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,147 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +/*- + * Copyright (c) 1993 + * The Regents of the University of California. All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * Paul Borman at Krystal Technologies. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include +#include +#include +#include + +#include "rune.h" +#include "_wctrans_local.h" +#include "_wctype_local.h" + +_RuneType +_runetype_priv(_RuneLocale const *rl, wint_t wc) +{ + __nbrune_t wc0; + _RuneRange const *rr; + _RuneEntry *base, *re; + uint32_t x; + + _DIAGASSERT(rl != NULL); + + if (wc == WEOF) + return 0U; + if (_RUNE_ISCACHED(wc)) + return rl->rl_runetype[(size_t)wc]; + wc0 = (__nbrune_t)wc; + rr = &rl->rl_runetype_ext; + _DIAGASSERT(rr != NULL); + base = rr->rr_rune_ranges; + for (x = rr->rr_nranges; x != (uint32_t)0; x >>= 1) { + re = base + (x >> 1); + if (re->re_min <= wc0 && re->re_max >= wc0) { + if (re->re_rune_types) + return re->re_rune_types[wc0 - re->re_min]; + else + return re->re_map; + } else if (wc0 > re->re_max) { + base = re + 1; + --x; + } + } + return (_RuneType)0U; +} + +int +_iswctype_priv(_RuneLocale const *rl, + wint_t wc, _WCTypeEntry const *te) +{ + return !!(_runetype_priv(rl, wc) & te->te_mask); +} + +wint_t +_towctrans_priv(_RuneLocale const *rl, + wint_t wc, _WCTransEntry const *te) +{ + __nbrune_t wc0; + _RuneRange *rr; + _RuneEntry *base, *re; + uint32_t x; + + _DIAGASSERT(rl != NULL); + _DIAGASSERT(te != NULL); + + if (wc == WEOF) + return wc; + if (te->te_name == NULL) + _wctrans_init(__UNCONST(rl)); + if (_RUNE_ISCACHED(wc)) + return te->te_cached[(size_t)wc]; + wc0 = (__nbrune_t)wc; + rr = te->te_extmap; + _DIAGASSERT(rr != NULL); + base = rr->rr_rune_ranges; + for (x = rr->rr_nranges; x != (uint32_t)0; x >>= 1) { + re = base + (x >> 1); + if (re->re_min <= wc0 && re->re_max >= wc0) { + return re->re_map + wc0 - re->re_min; + } else if (wc0 >= re->re_max) { + base = re + 1; + --x; + } + } + return wc; +} Index: lib/libc/locale/_wctype_local.h =================================================================== RCS file: lib/libc/locale/_wctype_local.h diff -N lib/libc/locale/_wctype_local.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/_wctype_local.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,38 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c) 2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _WCTYPE_LOCAL_H_ +#define _WCTYPE_LOCAL_H_ + +__BEGIN_DECLS +_RuneType _runetype_priv(_RuneLocale const *, wint_t); +int _iswctype_priv(_RuneLocale const *, wint_t, _WCTypeEntry const *); +wint_t _towctrans_priv(_RuneLocale const *, wint_t, _WCTransEntry const *); +__END_DECLS + +#endif /*_WCTYPE_LOCAL_H_*/ Index: lib/libc/locale/aliasname.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/aliasname.c,v retrieving revision 1.2 diff -u -r1.2 aliasname.c --- lib/libc/locale/aliasname.c 9 Feb 2005 21:35:46 -0000 1.2 +++ lib/libc/locale/aliasname.c 14 Dec 2008 18:55:47 -0000 @@ -50,7 +50,7 @@ __unaliasname(const char *dbname, const char *alias, void *buf, size_t bufsize) { FILE *fp = NULL; - const char *result = alias; + const char *result = NULL; size_t resultlen; size_t aliaslen; const char *p; Index: lib/libc/locale/aliasname_local.h =================================================================== RCS file: /cvsroot/src/lib/libc/locale/aliasname_local.h,v retrieving revision 1.1 diff -u -r1.1 aliasname_local.h --- lib/libc/locale/aliasname_local.h 13 Feb 2002 07:45:52 -0000 1.1 +++ lib/libc/locale/aliasname_local.h 14 Dec 2008 18:55:47 -0000 @@ -26,4 +26,49 @@ * SUCH DAMAGE. */ +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _ALIASNAME_LOCAL_H_ +#define _ALIASNAME_LOCAL_H_ + const char *__unaliasname(const char *, const char *, void *, size_t); + +static __inline int +__isforcemapping(const char *name) +{ + /* don't use strcasecmp, it owes locale. */ + return + name[0] == '/' && + (name[1] == 'F' || name[1] == 'f') && + (name[2] == 'O' || name[2] == 'o') && + (name[3] == 'R' || name[3] == 'r') && + (name[4] == 'C' || name[4] == 'c') && + (name[5] == 'E' || name[5] == 'e') && + name[6] == '\0'; +} + +#endif /*_ALIASNAME_LOCAL_H_*/ Index: lib/libc/locale/bsdctype.c =================================================================== RCS file: lib/libc/locale/bsdctype.c diff -N lib/libc/locale/bsdctype.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/bsdctype.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,46 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include +#define _CTYPE_PRIVATE +#include + +#include "bsdctype.h" + +const _BSDCTypeLocale _DefaultBSDCTypeLocale = { + _C_ctype_, + _C_tolower_, + _C_toupper_ +}; + +const _BSDCTypeLocale *_CurrentBSDCTypeLocale = &_DefaultBSDCTypeLocale; Index: lib/libc/locale/bsdctype.h =================================================================== RCS file: lib/libc/locale/bsdctype.h diff -N lib/libc/locale/bsdctype.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/bsdctype.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,41 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _BSDCTYPE_H_ +#define _BSDCTYPE_H_ + +typedef struct _BSDCTypeLocale { + const unsigned char *ctype_tab; + const short *tolower_tab; + const short *toupper_tab; +} _BSDCTypeLocale; + +extern const _BSDCTypeLocale _DefaultBSDCTypeLocale; +extern const _BSDCTypeLocale *_CurrentBSDCTypeLocale; + +#endif /*_BSDCTYPE_H_*/ Index: lib/libc/locale/ctypeio.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/ctypeio.c,v retrieving revision 1.7 diff -u -r1.7 ctypeio.c --- lib/libc/locale/ctypeio.c 29 Nov 2005 03:11:59 -0000 1.7 +++ lib/libc/locale/ctypeio.c 14 Dec 2008 18:55:47 -0000 @@ -1,4 +1,4 @@ -/* $NetBSD: ctypeio.c,v 1.7 2005/11/29 03:11:59 christos Exp $ */ +/* $NetBSD$ */ /* * Copyright (c) 1997 Christos Zoulas. All rights reserved. @@ -31,72 +31,76 @@ #include #if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: ctypeio.c,v 1.7 2005/11/29 03:11:59 christos Exp $"); +__RCSID("$NetBSD$"); #endif /* LIBC_SCCS and not lint */ #include - #include +#define _CTYPE_PRIVATE +#include +#include #include #include #include -#define _CTYPE_PRIVATE -#include +#include + +#include "bsdctype.h" #include "ctypeio.h" int -__loadctype(name) - const char *name; +__loadctype(const char * __restrict path, _BSDCTypeLocale ** __restrict pdata) { FILE *fp; char id[sizeof(_CTYPE_ID) - 1]; - u_int32_t i, len; - unsigned char *new_ctype = NULL; - short *new_toupper = NULL, *new_tolower = NULL; - - _DIAGASSERT(name != NULL); - - if ((fp = fopen(name, "r")) == NULL) - return 0; - - if (fread(id, sizeof(id), 1, fp) != 1) - goto bad; - - if (memcmp(id, _CTYPE_ID, sizeof(id)) != 0) - goto bad; - - if (fread(&i, sizeof(u_int32_t), 1, fp) != 1) - goto bad; - - if ((i = ntohl(i)) != _CTYPE_REV) - goto bad; - - if (fread(&len, sizeof(u_int32_t), 1, fp) != 1) - goto bad; - - if ((len = ntohl(len)) != _CTYPE_NUM_CHARS) - goto bad; - - if ((new_ctype = malloc(sizeof(u_int8_t) * (1 + len))) == NULL) - goto bad; - - new_ctype[0] = 0; - if (fread(&new_ctype[1], sizeof(u_int8_t), len, fp) != len) - goto bad; - - if ((new_toupper = malloc(sizeof(int16_t) * (1 + len))) == NULL) - goto bad; - - new_toupper[0] = EOF; - if (fread(&new_toupper[1], sizeof(int16_t), len, fp) != len) - goto bad; - - if ((new_tolower = malloc(sizeof(int16_t) * (1 + len))) == NULL) - goto bad; - - new_tolower[0] = EOF; - if (fread(&new_tolower[1], sizeof(int16_t), len, fp) != len) - goto bad; + uint32_t i, len; + char *ptr; + uint8_t *new_ctype; + int16_t *new_tolower, *new_toupper; + _BSDCTypeLocale *data; + + _DIAGASSERT(path != NULL); + _DIAGASSERT(pdata != NULL); + + fp = fopen(path, "r"); + if (fp == NULL) + return ENOENT; + + if (fread(id, sizeof(id), 1, fp) != 1 || + memcmp(id, _CTYPE_ID, sizeof(id)) != 0) + goto bad0; + + if (fread(&i, sizeof(uint32_t), 1, fp) != 1 || + (i = ntohl(i)) != _CTYPE_REV) + goto bad0; + + if (fread(&len, sizeof(uint32_t), 1, fp) != 1 || + (len = ntohl(len)) != _CTYPE_NUM_CHARS) + goto bad0; + + ptr = malloc(sizeof(*data) + ((sizeof(uint8_t) + + sizeof(int16_t) + sizeof(int16_t)) * (len + 1))); + if (ptr == NULL) + return ENOMEM; + + data = (_BSDCTypeLocale *)(void *)ptr; + ptr += sizeof(*data); + + (new_ctype = (void *)ptr)[0] = (uint8_t)0; + ptr += sizeof(uint8_t); + if (fread((void *)ptr, sizeof(uint8_t), len, fp) != len) + goto bad1; + ptr += sizeof(uint8_t) * len; + + (new_toupper = (void *)ptr)[0] = (int16_t)EOF; + ptr += sizeof(int16_t); + if (fread((void *)ptr, sizeof(int16_t), len, fp) != len) + goto bad1; + ptr += sizeof(int16_t) * len; + + (new_tolower = (void *)ptr)[0] = (int16_t)EOF; + ptr += sizeof(int16_t); + if (fread((void *)ptr, sizeof(int16_t), len, fp) != len) + goto bad1; #if BYTE_ORDER == LITTLE_ENDIAN for (i = 1; i <= len; i++) { @@ -105,73 +109,18 @@ } #endif - (void) fclose(fp); - if (_ctype_ != _C_ctype_) - free(__UNCONST(_ctype_)); - _ctype_ = new_ctype; - if (_toupper_tab_ != _C_toupper_) - free(__UNCONST(_toupper_tab_)); - _toupper_tab_ = new_toupper; - if (_tolower_tab_ != _C_tolower_) - free(__UNCONST(_tolower_tab_)); - _tolower_tab_ = new_tolower; - - return 1; -bad: - free(new_tolower); - free(new_toupper); - free(new_ctype); - (void) fclose(fp); - return 0; -} + fclose(fp); -int -__savectype(name, new_ctype, new_toupper, new_tolower) - const char *name; - unsigned char *new_ctype; - short *new_toupper, *new_tolower; -{ - FILE *fp; - u_int32_t i, len = _CTYPE_NUM_CHARS; + data->ctype_tab = (const unsigned char *)new_ctype; + data->toupper_tab = (const short *)new_toupper; + data->tolower_tab = (const short *)new_tolower; - _DIAGASSERT(name != NULL); - _DIAGASSERT(new_ctype != NULL); - _DIAGASSERT(new_toupper != NULL); - _DIAGASSERT(new_tolower != NULL); + *pdata = data; - if ((fp = fopen(name, "w")) == NULL) return 0; - if (fwrite(_CTYPE_ID, sizeof(_CTYPE_ID) - 1, 1, fp) != 1) - goto bad; - - i = htonl(_CTYPE_REV); - if (fwrite(&i, sizeof(u_int32_t), 1, fp) != 1) - goto bad; - - i = htonl(len); - if (fwrite(&i, sizeof(u_int32_t), 1, fp) != 1) - goto bad; - - if (fwrite(&new_ctype[1], sizeof(u_int8_t), len, fp) != len) - goto bad; - -#if BYTE_ORDER == LITTLE_ENDIAN - for (i = 1; i <= len; i++) { - new_toupper[i] = htons(new_toupper[i]); - new_tolower[i] = htons(new_tolower[i]); - } -#endif - if (fwrite(&new_toupper[1], sizeof(int16_t), len, fp) != len) - goto bad; - - if (fwrite(&new_tolower[1], sizeof(int16_t), len, fp) != len) - goto bad; - - - (void) fclose(fp); - return 1; -bad: - (void) fclose(fp); - return 0; +bad1: + free(data); +bad0: + return EFTYPE; } Index: lib/libc/locale/ctypeio.h =================================================================== RCS file: /cvsroot/src/lib/libc/locale/ctypeio.h,v retrieving revision 1.1 diff -u -r1.1 ctypeio.h --- lib/libc/locale/ctypeio.h 2 Jun 1997 09:52:48 -0000 1.1 +++ lib/libc/locale/ctypeio.h 14 Dec 2008 18:55:47 -0000 @@ -30,6 +30,5 @@ */ __BEGIN_DECLS -int __loadctype __P((const char *)); -int __savectype __P((const char *, unsigned char *, short *, short *)); +int __loadctype(const char * __restrict, _BSDCTypeLocale ** __restrict pdata); __END_DECLS Index: lib/libc/locale/current_locale.c =================================================================== RCS file: lib/libc/locale/current_locale.c diff -N lib/libc/locale/current_locale.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/current_locale.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,49 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include + +#include "setlocale_local.h" + +static struct _locale_impl_t *__current_locale = &_global_locale; + +struct _locale_impl_t ** +_current_locale() +{ + return &__current_locale; +} Index: lib/libc/locale/dummy_lc_collate.c =================================================================== RCS file: lib/libc/locale/dummy_lc_collate.c diff -N lib/libc/locale/dummy_lc_collate.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/dummy_lc_collate.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,54 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include + +#include "setlocale_local.h" + +/* + * macro required by dummy_lc_template.h + */ +#define _PREFIX(name) __CONCAT(_dummy_LC_COLLATE_,name) + +#define _CATEGORY_ID LC_COLLATE +#define _CATEGORY_NAME "LC_COLLATE" + +#include "dummy_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_dummy_LC_COLLATE_); Index: lib/libc/locale/dummy_lc_template.h =================================================================== RCS file: lib/libc/locale/dummy_lc_template.h diff -N lib/libc/locale/dummy_lc_template.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/dummy_lc_template.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,56 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _DUMMY_LC_TEMPLATE_H_ +#define _DUMMY_LC_TEMPLATE_H_ + +#include "generic_lc_template_decl.h" + +static const char * +_PREFIX(setlocale)(const char * __restrict name, + struct _locale_impl_t * __restrict locale) +{ + if (name != NULL) { + if (*name == '\0') + name = _get_locale_env(_CATEGORY_NAME); + if (strcmp(name, locale->part_name[(size_t)_CATEGORY_ID])) { + if (!strcmp(_C_LOCALE, name)) + name = _C_LOCALE; + else if (!strcmp(_POSIX_LOCALE, name)) + name = _POSIX_LOCALE; + else + return NULL; + locale->part_name[(size_t)_CATEGORY_ID] = name; + } + } + return locale->part_name[(size_t)_CATEGORY_ID]; +} + +#include "generic_lc_template.h" + +#endif /*_DUMMY_LC_TEMPLATE_H_*/ Index: lib/libc/locale/fix_grouping.c =================================================================== RCS file: lib/libc/locale/fix_grouping.c diff -N lib/libc/locale/fix_grouping.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/fix_grouping.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,103 @@ +/* $NetBSD$ */ + +/* + * Copyright (c) 2001 Alexey Zelkin + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * Original version ID: + * FreeBSD: fix_grouping.c,v 1.8 2003/06/26 10:46:16 phantom Exp + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include +#include +#include + +#include "fix_grouping.h" + +#ifndef NBCHAR_MAX +#define NBCHAR_MAX CHAR_MAX +#endif + +static const char nogrouping[] = { NBCHAR_MAX, '\0' }; + +/* don't use libc's isdigit, it owes locale. */ +#undef isdigit +#define isdigit(c) (c >= '0' && c <= '9') + +/* + * Internal helper used to convert grouping sequences from string + * representation into POSIX specified form, i.e. + * + * "3;3;-1" -> "\003\003\177\000" + */ + +const char * +__fix_locale_grouping_str(const char *str) +{ + char *src, *dst; + char n; + + if (str == NULL || *str == '\0') { + return nogrouping; + } + + for (src = __UNCONST(str), dst = __UNCONST(str); *src != '\0'; src++) { + + /* input string examples: "3;3", "3;2;-1" */ + if (*src == ';') + continue; + + if (*src == '-' && *(src+1) == '1') { + *dst++ = NBCHAR_MAX; + src++; + continue; + } + + if (!isdigit((unsigned char)*src)) { + /* broken grouping string */ + return nogrouping; + } + + /* assume all numbers <= 99 */ + n = *src - '0'; + if (isdigit((unsigned char)*(src+1))) { + src++; + n *= 10; + n += *src - '0'; + } + + *dst = n; + /* NOTE: assume all input started with "0" as 'no grouping' */ + if (*dst == '\0') + return (dst == __UNCONST(str)) ? nogrouping : str; + dst++; + } + *dst = '\0'; + return str; +} Index: lib/libc/locale/fix_grouping.h =================================================================== RCS file: lib/libc/locale/fix_grouping.h diff -N lib/libc/locale/fix_grouping.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/fix_grouping.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,36 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c) 2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _FIX_GROUPING_H_ +#define _FIX_GROUPING_H_ + +__BEGIN_DECLS +const char *__fix_locale_grouping_str(const char *); +__END_DECLS + +#endif /*_FIX_GROUPING_H_*/ Index: lib/libc/locale/generic_lc_all.c =================================================================== RCS file: lib/libc/locale/generic_lc_all.c diff -N lib/libc/locale/generic_lc_all.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/generic_lc_all.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,118 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include + +#include "setlocale_local.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_generic_LC_ALL_, name) + +#include "generic_lc_template_decl.h" + +const char * +_generic_LC_ALL_setlocale(const char * __restrict name, + struct _locale_impl_t * __restrict locale) +{ + _locale_category_t *l; + char head[_LOCALENAME_LEN_MAX * (_LC_LAST - 1)], *tail; + const char *tokens[_LC_LAST], *s, *t; + int i, j; + + l = _find_category(1); + _DIAGASSERT(l != NULL); + if (name != NULL) { + strlcpy(&head[0], name, sizeof(head)); + tokens[1] = &head[0]; + tail = strchr(tokens[1], '/'); + if (tail == NULL) { + for (i = 2; i < _LC_LAST; ++i) + tokens[i] = tokens[1]; + } else { + *tail++ = '\0'; + for (i = 2; i < _LC_LAST - 1; ++i) { + tokens[i] = (const char *)tail; + tail = strchr(tokens[i], '/'); + if (tail == NULL) + return NULL; + *tail++ = '\0'; + } + tokens[_LC_LAST - 1] = (const char *)tail; + tail = strchr(tokens[i], '/'); + if (tail == NULL) + return NULL; + } + (*l->setlocale)(tokens[1], locale); + } + s = (*l->setlocale)(NULL, locale); + _DIAGASSERT(s != NULL); + strlcpy(&locale->query[0], s, sizeof(locale->query)); + for (i = 2, j = 0; i < _LC_LAST; ++i) { + l = _find_category(i); + _DIAGASSERT(l != NULL); + if (name != NULL) + (*l->setlocale)(tokens[1], locale); + t = (*l->setlocale)(NULL, locale); + _DIAGASSERT(t != NULL); + if (j == 0) { + if (!strcmp(s, t)) + continue; + for (j = 2; j < i; ++j) { + strlcat(&locale->query[0], "/", + sizeof(locale->query)); + strlcat(&locale->query[0], s, + sizeof(locale->query)); + } + } + strlcat(&locale->query[0], "/", sizeof(locale->query)); + strlcat(&locale->query[0], t, sizeof(locale->query)); + } + return (const char *)&locale->query[0]; +} + +/* + * macro requrired by generic_lc_template.h + */ +#define _CATEGORY_ID LC_ALL + +#include "generic_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_generic_LC_ALL_); Index: lib/libc/locale/generic_lc_template.h =================================================================== RCS file: lib/libc/locale/generic_lc_template.h diff -N lib/libc/locale/generic_lc_template.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/generic_lc_template.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,45 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _GENERIC_LC_TEMPLATE_H_ +#define _GENERIC_LC_TEMPLATE_H_ + +#ifdef __lint__ +#define STATIC /**/ +#else +#define STATIC static +#endif + +#define _LOCALE_CATEGORY_ENTRY(name) \ +STATIC const _locale_category_t name##desc = { \ + .category = _CATEGORY_ID, \ + .setlocale = &name##setlocale, \ +}; \ +__link_set_add_data(all_categories, name##desc) + +#endif /*_GENERIC_LC_TEMPLATE_H_*/ Index: lib/libc/locale/generic_lc_template_decl.h =================================================================== RCS file: lib/libc/locale/generic_lc_template_decl.h diff -N lib/libc/locale/generic_lc_template_decl.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/generic_lc_template_decl.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,35 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _GENERIC_LC_TEMPLATE_DECL_H_ +#define _GENERIC_LC_TEMPLATE_DECL_H_ + +static const char * _PREFIX(setlocale)(const char * __restrict, + struct _locale_impl_t * __restrict); + +#endif /*_GENERIC_LC_TEMPLATE_DECL_H_*/ Index: lib/libc/locale/global_locale.c =================================================================== RCS file: lib/libc/locale/global_locale.c diff -N lib/libc/locale/global_locale.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/global_locale.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,170 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include +#include +#define _CTYPE_PRIVATE +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#ifdef WITH_RUNE +#include "rune.h" +#else +#include "bsdctype.h" +#endif + +#include "setlocale_local.h" + +struct _locale_impl_t _global_locale = +{ + .cache = { + .ctype_tab = (const unsigned char *)&_C_ctype_[0], + .tolower_tab = (const short *)&_C_tolower_[0], + .toupper_tab = (const short *)&_C_toupper_[0], + .mb_cur_max = (size_t)1, + .ldata = { + .decimal_point = __UNCONST("."), + .thousands_sep = __UNCONST(""), + .grouping = __UNCONST(""), + .int_curr_symbol = __UNCONST(""), + .currency_symbol = __UNCONST(""), + .mon_decimal_point = __UNCONST(""), + .mon_thousands_sep = __UNCONST(""), + .mon_grouping = __UNCONST(""), + .positive_sign = __UNCONST(""), + .negative_sign = __UNCONST(""), + .int_frac_digits = CHAR_MAX, + .frac_digits = CHAR_MAX, + .p_cs_precedes = CHAR_MAX, + .p_sep_by_space = CHAR_MAX, + .n_cs_precedes = CHAR_MAX, + .n_sep_by_space = CHAR_MAX, + .p_sign_posn = CHAR_MAX, + .n_sign_posn = CHAR_MAX, + .int_p_cs_precedes = CHAR_MAX, + .int_n_cs_precedes = CHAR_MAX, + .int_p_sep_by_space = CHAR_MAX, + .int_n_sep_by_space = CHAR_MAX, + .int_p_sign_posn = CHAR_MAX, + .int_n_sign_posn = CHAR_MAX, + }, + .items = { + [(size_t)D_T_FMT ] = "%a %b %e %H:%M:%S %Y", + [(size_t)D_FMT ] = "%m/%d/%y", + [(size_t)T_FMT ] = "%H:%M:%S", + [(size_t)T_FMT_AMPM ] = "%I:%M:%S %p", + [(size_t)AM_STR ] = "AM", + [(size_t)PM_STR ] = "PM", + [(size_t)DAY_1 ] = "Sun", + [(size_t)DAY_2 ] = "Mon", + [(size_t)DAY_3 ] = "Tue", + [(size_t)DAY_4 ] = "Wed", + [(size_t)DAY_5 ] = "Thu", + [(size_t)DAY_6 ] = "Fri", + [(size_t)DAY_7 ] = "Sat", + [(size_t)ABDAY_1 ] = "Sunday", + [(size_t)ABDAY_2 ] = "Monday", + [(size_t)ABDAY_3 ] = "Tuesday", + [(size_t)ABDAY_4 ] = "Wednesday", + [(size_t)ABDAY_5 ] = "Thursday", + [(size_t)ABDAY_6 ] = "Friday", + [(size_t)ABDAY_7 ] = "Saturday", + [(size_t)MON_1 ] = "Jan", + [(size_t)MON_2 ] = "Feb", + [(size_t)MON_3 ] = "Mar", + [(size_t)MON_4 ] = "Apr", + [(size_t)MON_5 ] = "May", + [(size_t)MON_6 ] = "Jun", + [(size_t)MON_7 ] = "Jul", + [(size_t)MON_8 ] = "Aug", + [(size_t)MON_9 ] = "Sep", + [(size_t)MON_10 ] = "Oct", + [(size_t)MON_11 ] = "Nov", + [(size_t)MON_12 ] = "Dec", + [(size_t)ABMON_1 ] = "January", + [(size_t)ABMON_2 ] = "February", + [(size_t)ABMON_3 ] = "March", + [(size_t)ABMON_4 ] = "April", + [(size_t)ABMON_5 ] = "May", + [(size_t)ABMON_6 ] = "June", + [(size_t)ABMON_7 ] = "July", + [(size_t)ABMON_8 ] = "Augst", + [(size_t)ABMON_9 ] = "September", + [(size_t)ABMON_10 ] = "October", + [(size_t)ABMON_11 ] = "November", + [(size_t)ABMON_12 ] = "December", + [(size_t)RADIXCHAR ] = ".", + [(size_t)THOUSEP ] = "", + [(size_t)YESSTR ] = "yes", + [(size_t)YESEXPR ] = "^[Yy]", + [(size_t)NOSTR ] = "no", + [(size_t)NOEXPR ] = "^[Nn]", + [(size_t)CRNCYSTR ] = NULL, + [(size_t)CODESET ] = "646", + [(size_t)ERA ] = NULL, + [(size_t)ERA_D_FMT ] = NULL, + [(size_t)ERA_D_T_FMT] = NULL, + [(size_t)ERA_T_FMT ] = NULL, + [(size_t)ALT_DIGITS ] = NULL, + }, + }, + .query = /*_C_LOCALE*/ { 'C', '\0' }, + .part_name = { + [(size_t)LC_ALL ] = _C_LOCALE, + [(size_t)LC_COLLATE ] = _C_LOCALE, + [(size_t)LC_CTYPE ] = _C_LOCALE, + [(size_t)LC_MONETARY] = _C_LOCALE, + [(size_t)LC_NUMERIC ] = _C_LOCALE, + [(size_t)LC_TIME ] = _C_LOCALE, + [(size_t)LC_MESSAGES] = _C_LOCALE, + }, + .part_impl = { + [(size_t)LC_ALL ] = (_locale_part_t)NULL, + [(size_t)LC_COLLATE ] = (_locale_part_t)NULL, + [(size_t)LC_CTYPE ] = (_locale_part_t) +#ifdef WITH_RUNE + __UNCONST(&_DefaultRuneLocale), +#else + __UNCONST(&_DefaultBSDCTypeLocale), +#endif + [(size_t)LC_MONETARY] = (_locale_part_t) + __UNCONST(&_DefaultMonetaryLocale), + [(size_t)LC_NUMERIC ] = (_locale_part_t) + __UNCONST(&_DefaultNumericLocale), + [(size_t)LC_MESSAGES] = (_locale_part_t) + __UNCONST(&_DefaultMessagesLocale), + }, +}; Index: lib/libc/locale/iswctype.c =================================================================== RCS file: lib/libc/locale/iswctype.c diff -N lib/libc/locale/iswctype.c --- lib/libc/locale/iswctype.c 12 Aug 2008 20:51:25 -0000 1.16 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,282 +0,0 @@ -/* $NetBSD: iswctype.c,v 1.16 2008/08/12 20:51:25 tnozaki Exp $ */ - -/* - * Copyright (c) 1989 The Regents of the University of California. - * All rights reserved. - * (c) UNIX System Laboratories, Inc. - * All or some portions of this file are derived from material licensed - * to the University of California by American Telephone and Telegraph - * Co. or Unix System Laboratories, Inc. and are reproduced herein with - * the permission of UNIX System Laboratories, Inc. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include -#if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: iswctype.c,v 1.16 2008/08/12 20:51:25 tnozaki Exp $"); -#endif /* LIBC_SCCS and not lint */ - -#include "namespace.h" - -#include -#include -#include -#include -#include -#include "rune.h" -#include "runetype.h" -#include "rune_local.h" -#include "_wctrans_local.h" - -#ifdef __weak_alias -__weak_alias(wcwidth,_wcwidth) -#endif - -#ifdef lint -#define __inline -#endif - -static __inline _RuneType __runetype_w __P((wint_t)); -static __inline int __isctype_w __P((wint_t, _RuneType)); -static __inline wint_t __toupper_w __P((wint_t)); -static __inline wint_t __tolower_w __P((wint_t)); - -static __inline _RuneType -__runetype_w(c) - wint_t c; -{ - _RuneLocale *rl = _CurrentRuneLocale; - - return (_RUNE_ISCACHED(c) ? - rl->rl_runetype[c] : ___runetype_mb(c)); -} - -static __inline int -__isctype_w(c, f) - wint_t c; - _RuneType f; -{ - return (!!(__runetype_w(c) & f)); -} - -static __inline wint_t -__toupper_w(c) - wint_t c; -{ - return (_towctrans(c, _wctrans_upper(_CurrentRuneLocale))); -} - -static __inline wint_t -__tolower_w(c) - wint_t c; -{ - return (_towctrans(c, _wctrans_lower(_CurrentRuneLocale))); -} - -#undef iswalnum -int -iswalnum(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_A|_CTYPE_D)); -} - -#undef iswalpha -int -iswalpha(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_A)); -} - -#undef iswblank -int -iswblank(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_B)); -} - -#undef iswcntrl -int -iswcntrl(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_C)); -} - -#undef iswdigit -int -iswdigit(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_D)); -} - -#undef iswgraph -int -iswgraph(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_G)); -} - -#undef iswlower -int -iswlower(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_L)); -} - -#undef iswprint -int -iswprint(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_R)); -} - -#undef iswpunct -int -iswpunct(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_P)); -} - -#undef iswspace -int -iswspace(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_S)); -} - -#undef iswupper -int -iswupper(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_U)); -} - -#undef iswxdigit -int -iswxdigit(c) - wint_t c; -{ - return (__isctype_w((c), _CTYPE_X)); -} - -#undef towupper -wint_t -towupper(c) - wint_t c; -{ - return (__toupper_w(c)); -} - -#undef towlower -wint_t -towlower(c) - wint_t c; -{ - return (__tolower_w(c)); -} - -int -wcwidth(c) - wchar_t c; -{ - _RuneType x; - - if (c == L'\0') - return 0; - x = __runetype_w(c); - if (x & _CTYPE_R) - return ((unsigned)x & _CTYPE_SWM) >> _CTYPE_SWS; - return -1; -} - -#undef wctrans -wctrans_t -wctrans(charclass) - const char *charclass; -{ - int i; - _RuneLocale *rl = _CurrentRuneLocale; - - if (rl->rl_wctrans[_WCTRANS_INDEX_LOWER].te_name==NULL) - _wctrans_init(rl); - - for (i=0; i<_WCTRANS_NINDEXES; i++) - if (!strcmp(rl->rl_wctrans[i].te_name, charclass)) - return ((wctrans_t)&rl->rl_wctrans[i]); - - return ((wctrans_t)NULL); -} - -#undef towctrans -wint_t -towctrans(c, desc) - wint_t c; - wctrans_t desc; -{ - if (desc==NULL) { - errno = EINVAL; - return (c); - } - return (_towctrans(c, (_WCTransEntry *)desc)); -} - -#undef wctype -wctype_t -wctype(const char *property) -{ - int i; - _RuneLocale *rl = _CurrentRuneLocale; - - for (i=0; i<_WCTYPE_NINDEXES; i++) - if (!strcmp(rl->rl_wctype[i].te_name, property)) - return ((wctype_t)&rl->rl_wctype[i]); - return ((wctype_t)NULL); -} - -#undef iswctype -int -iswctype(wint_t c, wctype_t charclass) -{ - - /* - * SUSv3: If charclass is 0, iswctype() shall return 0. - */ - if (charclass == (wctype_t)0) { - return 0; - } - - return (__isctype_w(c, ((_WCTypeEntry *)charclass)->te_mask)); -} Index: lib/libc/locale/iswctype_mb.c =================================================================== RCS file: lib/libc/locale/iswctype_mb.c diff -N lib/libc/locale/iswctype_mb.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/iswctype_mb.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,189 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "namespace.h" +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "rune.h" +#include "_wctype_local.h" +#include "_wctrans_local.h" + +#define _RUNE_LOCALE() ((_RuneLocale const *) \ + (*_current_locale())->part_impl[(size_t)LC_CTYPE]) + +#define _ISWCTYPE_FUNC(name, index) \ +int \ +isw##name(wint_t wc) \ +{ \ + _RuneLocale const *rl; \ + _WCTypeEntry const *te; \ + \ + rl = _RUNE_LOCALE(); \ + te = &rl->rl_wctype[index]; \ + return _iswctype_priv(rl, wc, te); \ +} +_ISWCTYPE_FUNC(alnum, _WCTYPE_INDEX_ALNUM) +_ISWCTYPE_FUNC(alpha, _WCTYPE_INDEX_ALPHA) +_ISWCTYPE_FUNC(blank, _WCTYPE_INDEX_BLANK) +_ISWCTYPE_FUNC(cntrl, _WCTYPE_INDEX_CNTRL) +_ISWCTYPE_FUNC(digit, _WCTYPE_INDEX_DIGIT) +_ISWCTYPE_FUNC(graph, _WCTYPE_INDEX_GRAPH) +_ISWCTYPE_FUNC(lower, _WCTYPE_INDEX_LOWER) +_ISWCTYPE_FUNC(print, _WCTYPE_INDEX_PRINT) +_ISWCTYPE_FUNC(punct, _WCTYPE_INDEX_PUNCT) +_ISWCTYPE_FUNC(space, _WCTYPE_INDEX_SPACE) +_ISWCTYPE_FUNC(upper, _WCTYPE_INDEX_UPPER) +_ISWCTYPE_FUNC(xdigit, _WCTYPE_INDEX_XDIGIT) + +#define _TOWCTRANS_FUNC(name, index) \ +wint_t \ +tow##name(wint_t wc) \ +{ \ + _RuneLocale const *rl; \ + _WCTransEntry const *te; \ + \ + rl = _RUNE_LOCALE(); \ + te = &rl->rl_wctrans[index]; \ + return _towctrans_priv(rl, wc, te); \ +} +_TOWCTRANS_FUNC(upper, _WCTRANS_INDEX_UPPER) +_TOWCTRANS_FUNC(lower, _WCTRANS_INDEX_LOWER) + +wctype_t +wctype(const char *charclass) +{ + _RuneLocale const *rl; + size_t i; + + rl = _RUNE_LOCALE(); + for (i = 0; i < _WCTYPE_NINDEXES; ++i) { + if (!strcmp(rl->rl_wctype[i].te_name, charclass)) + return (wctype_t)__UNCONST(&rl->rl_wctype[i]); + } + return (wctype_t)NULL; +} + +wctrans_t +wctrans(const char *charmap) +{ + _RuneLocale const *rl; + size_t i; + + rl = _RUNE_LOCALE(); + if (rl->rl_wctrans[_WCTRANS_INDEX_LOWER].te_name == NULL) + _wctrans_init(__UNCONST(rl)); + for (i = 0; i < _WCTRANS_NINDEXES; ++i) { + if (!strcmp(rl->rl_wctrans[i].te_name, charmap)) + return (wctrans_t)__UNCONST(&rl->rl_wctype[i]); + } + return (wctrans_t)NULL; +} + +int +iswctype(wint_t wc, wctype_t charclass) +{ + _RuneLocale const *rl; + _WCTypeEntry const *te; + + if (charclass == NULL) { + errno = EINVAL; + return 0; + } + rl = _RUNE_LOCALE(); + te = (_WCTypeEntry const *)charclass; + return _iswctype_priv(rl, wc, te); +} + +wint_t +towctrans(wint_t wc, wctrans_t charmap) +{ + _RuneLocale const *rl; + _WCTransEntry const *te; + + if (charmap == NULL) { + errno = EINVAL; + return wc; + } + rl = _RUNE_LOCALE(); + te = (_WCTransEntry const *)charmap; + return _towctrans_priv(rl, wc, te); +} + +__weak_alias(wcwidth,_wcwidth) + +int +wcwidth(wchar_t wc) +{ + _RuneLocale const *rl; + _RuneType x; + + if (wc == L'\0') + return 0; + rl = _RUNE_LOCALE(); + x = _runetype_priv(rl, wc); + if (x & _CTYPE_R) + return ((unsigned)x & _CTYPE_SWM) >> _CTYPE_SWS; + return -1; +} + +int +wcswidth(const wchar_t * __restrict ws, size_t wn) +{ + _RuneLocale const *rl; + _RuneType x; + int width; + + _DIAGASSERT(ws != NULL); + + rl = _RUNE_LOCALE(); + width = 0; + while (wn > 0 && *ws != L'\0') { + x = _runetype_priv(rl, *ws); + if ((x & _CTYPE_R) == 0) + return -1; + width += ((unsigned)x & _CTYPE_SWM) >> _CTYPE_SWS; + ++ws, --wn; + } + return width; +} Index: lib/libc/locale/iswctype_sb.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/iswctype_sb.c,v retrieving revision 1.5 diff -u -r1.5 iswctype_sb.c --- lib/libc/locale/iswctype_sb.c 12 Aug 2008 20:51:25 -0000 1.5 +++ lib/libc/locale/iswctype_sb.c 14 Dec 2008 18:55:47 -0000 @@ -1,13 +1,8 @@ -/* $NetBSD: iswctype_sb.c,v 1.5 2008/08/12 20:51:25 tnozaki Exp $ */ +/* $NetBSD$ */ -/* - * Copyright (c) 1989 The Regents of the University of California. +/*- + * Copyright (c)2008 Citrus Project, * All rights reserved. - * (c) UNIX System Laboratories, Inc. - * All or some portions of this file are derived from material licensed - * to the University of California by American Telephone and Telegraph - * Co. or Unix System Laboratories, Inc. and are reproduced herein with - * the permission of UNIX System Laboratories, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -17,14 +12,11 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) @@ -36,134 +28,171 @@ #include #if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: iswctype_sb.c,v 1.5 2008/08/12 20:51:25 tnozaki Exp $"); +__RCSID("$NetBSD$"); #endif /* LIBC_SCCS and not lint */ -#include -#include +#include "namespace.h" +#include #include +#include +#include +#include +#include +#include +#include -#undef iswalnum -int -iswalnum(c) - wint_t c; -{ - return isalnum((int)c); -} - -#undef iswalpha -int -iswalpha(c) - wint_t c; -{ - return isalpha((int)c); -} +#define _ISWCTYPE_FUNC(name) \ +int \ +isw##name(wint_t wc) \ +{ \ + int c; \ + \ + c = (wc == WEOF) ? EOF : (unsigned char)wc; \ + return is##name(c); \ +} +_ISWCTYPE_FUNC(alnum) +_ISWCTYPE_FUNC(alpha) +_ISWCTYPE_FUNC(blank) +_ISWCTYPE_FUNC(cntrl) +_ISWCTYPE_FUNC(digit) +_ISWCTYPE_FUNC(graph) +_ISWCTYPE_FUNC(lower) +_ISWCTYPE_FUNC(print) +_ISWCTYPE_FUNC(punct) +_ISWCTYPE_FUNC(space) +_ISWCTYPE_FUNC(upper) +_ISWCTYPE_FUNC(xdigit) + +#define _TOWCTRANS_FUNC(name) \ +wint_t \ +tow##name(wint_t wc) \ +{ \ + c = (wc == WEOF) ? EOF : (unsigned char)wc; \ + return to##name(c); \ +} +_TOWCTRANS_FUNC(upper) +_TOWCTRANS_FUNC(lower) + +struct _wctype_priv_t { + const char *name; + int (*iswctype)(wint_t); +}; + +static const struct _wctype_priv_t _wctype_decl[] = { + { "alnum", &iswalnum }, + { "alpha", &iswalpha }, + { "blank", &iswblank }, + { "cntrl", &iswcntrl }, + { "digit", &iswdigit }, + { "graph", &iswgraph }, + { "lower", &iswlower }, + { "print", &iswprint }, + { "punct", &iswpunct }, + { "space", &iswspace }, + { "upper", &iswupper }, + { "xdigit", &iswxdigit }, +}; +static const size_t _wctype_decl_size = + sizeof(_wctype_decl) / sizeof(struct _wctype_priv_t); + +wctype_t +wctype(const char *charclass) +{ + size_t i; + + for (i = 0; i < _wctype_decl_size; ++i) { + if (!strcmp(charclass, _wctype_decl[i].name)) + return (wctype_t)__UNCONST(&_wctype_decl[i]); + } + return (wctrans_t)NULL; +} + +struct _wctrans_priv_t { + const char *name; + wint_t (*towctrans)(wint_t); +}; + +static const struct _wctrans_priv_t _wctrans_decl[] = { + { "upper", &towupper }, + { "lower", &towlower }, +}; +static const size_t _wctrans_decl_size = + sizeof(_wctrans_decl) / sizeof(struct _wctrans_priv_t); -#undef iswblank -int -iswblank(c) - wint_t c; +wctrans_t +/*ARGSUSED*/ +wctrans(const char *charmap) { - return isblank((int)c); -} + size_t i; -#undef iswcntrl -int -iswcntrl(c) - wint_t c; -{ - return iscntrl((int)c); + for (i = 0; i < _wctrans_decl_size; ++i) { + if (!strcmp(charmap, _wctrans_decl[i].name)) + return (wctrans_t)__UNCONST(&_wctrans_decl[i]); + } + return (wctrans_t)NULL; } -#undef iswdigit int -iswdigit(c) - wint_t c; +/*ARGSUSED*/ +iswctype(wint_t wc, wctype_t charclass) { - return isdigit((int)c); -} + const struct _wctype_priv_t *p; -#undef iswgraph -int -iswgraph(c) - wint_t c; -{ - return isgraph((int)c); + p = (const struct _wctype_priv_t *)(void *)charclass; + if (p < &_wctype_decl[0] || p > &_wctype_decl[_wctype_decl_size - 1]) { + errno = EINVAL; + return 0; + } + return (*p->iswctype)(wc); } -#undef iswlower -int -iswlower(c) - wint_t c; +wint_t +/*ARGSUSED*/ +towctrans(wint_t wc, wctrans_t charmap) { - return islower((int)c); -} + const struct _wctrans_priv_t *p; -#undef iswprint -int -iswprint(c) - wint_t c; -{ - return isprint((int)c); + p = (const struct _wctrans_priv_t *)(void *)charmap; + if (p < &_wctrans_decl[0] || p > &_wctrans_decl[_wctrans_decl_size - 1]) { + errno = EINVAL; + return wc; + } + return (*p->towctrans)(wc); } -#undef iswpunct -int -iswpunct(c) - wint_t c; -{ - return ispunct((int)c); -} +__weak_alias(wcwidth,_wcwidth) -#undef iswspace int -iswspace(c) - wint_t c; -{ - return isspace((int)c); -} +wcwidth(wchar_t wc) +{ + int c; -#undef iswupper -int -iswupper(c) - wint_t c; -{ - return isupper((int)c); + switch (wc) { + case L'\0': + return 0; + case WEOF: + c = EOF; + break; + default: + c = (unsigned char)wc; + } + if (isprint(c)) + return 1; + return -1; } -#undef iswxdigit int -iswxdigit(c) - wint_t c; -{ - return isxdigit((int)c); -} - -#undef towupper -wint_t -towupper(c) - wint_t c; +wcswidth(const wchar_t * __restrict ws, size_t wn) { - return toupper((int)c); -} - -#undef towlower -wint_t -towlower(c) - wint_t c; -{ - return tolower((int)c); -} + const wchar_t *pws; + int c; -#undef wcwidth -int -/*ARGSUSED*/ -wcwidth(c) - wchar_t c; -{ - if (c == L'\0') - return 0; - if (isprint((int)c)) - return 1; - return -1; + pws = ws; + while (wn > 0 && *ws != L'\0') { + c = (*ws == WEOF) ? EOF : (unsigned char)*ws; + if (!isprint(c)) + return -1; + ++ws, --wn; + } + return (int)(ws - pws); } Index: lib/libc/locale/lcmessages.c =================================================================== RCS file: lib/libc/locale/lcmessages.c diff -N lib/libc/locale/lcmessages.c --- lib/libc/locale/lcmessages.c 17 May 2008 03:49:54 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,71 +0,0 @@ -/* $NetBSD: lcmessages.c,v 1.1 2008/05/17 03:49:54 ginsbach Exp $ */ -/* - * Copyright (c) 2008, The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by Brian Ginsbach. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#include -#if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: lcmessages.c,v 1.1 2008/05/17 03:49:54 ginsbach Exp $"); -#endif /* LIBC_SCCS and not lint */ - -#include -#include - -#include - -#include "localeio.h" -#include "lcmessages.h" - -#define NSTRINGS (sizeof(_MessagesLocale)/sizeof(const char **)) - -int -__loadmessages(const char *filename) -{ - - _DIAGASSERT(filename != NULL); - - return __loadlocale(filename, NSTRINGS, 0, sizeof(_MessagesLocale), - &_CurrentMessagesLocale, &_DefaultMessagesLocale); -} - -#ifdef LOCALE_DEBUG - -#include "namespace.h" - -#include - -void -__dumptimelocale() -{ - - (void)printf("yesexpr = \"%s\"\n", _CurrentMessagesLocale->yesexpr); - (void)printf("noexpr = \"%s\"\n", _CurrentMessagesLocale->noexpr); - (void)printf("yesstr = \"%s\"\n", _CurrentMessagesLocale->yesstr); - (void)printf("nostr = \"%s\"\n", _CurrentMessagesLocale->nostr); -} -#endif /* LOCALE_DEBUG */ Index: lib/libc/locale/lcmessages.h =================================================================== RCS file: lib/libc/locale/lcmessages.h diff -N lib/libc/locale/lcmessages.h --- lib/libc/locale/lcmessages.h 17 May 2008 03:49:54 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,33 +0,0 @@ -/* $NetBSD: lcmessages.h,v 1.1 2008/05/17 03:49:54 ginsbach Exp $ */ -/* - * Copyright (c) 2008 The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by Brian Ginsbach. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -__BEGIN_DECLS -int __loadmessages(const char *); -__END_DECLS Index: lib/libc/locale/lcmonetary.c =================================================================== RCS file: lib/libc/locale/lcmonetary.c diff -N lib/libc/locale/lcmonetary.c --- lib/libc/locale/lcmonetary.c 17 May 2008 03:49:54 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,130 +0,0 @@ -/* $NetBSD: lcmonetary.c,v 1.1 2008/05/17 03:49:54 ginsbach Exp $ */ -/* - * Copyright (c) 2008, The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by Brian Ginsbach. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#include -#if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: lcmonetary.c,v 1.1 2008/05/17 03:49:54 ginsbach Exp $"); -#endif /* LIBC_SCCS and not lint */ - -#include -#include - -#include -#include -#include -#include - -#include "localeio.h" -#include "lcmonetary.h" - -#define NSTRINGS \ - (offsetof(_MonetaryLocale, int_frac_digits)/sizeof(const char **)) -#define NCHARS \ - (offsetof(_MonetaryLocale, int_n_sign_posn) - \ - offsetof(_MonetaryLocale, int_frac_digits) + 1) - -int -__loadmonetary(const char *filename) -{ - const char **gpp; - - _DIAGASSERT(filename != NULL); - - if (!__loadlocale(filename, NSTRINGS, NCHARS, sizeof(_MonetaryLocale), - &_CurrentMonetaryLocale, &_DefaultMonetaryLocale)) { - return 0; - } - - gpp = __UNCONST(&_CurrentMonetaryLocale->mon_grouping); - *gpp = __convertgrouping(_CurrentMonetaryLocale->mon_grouping); - - return 1; -} - -#ifdef LOCALE_DEBUG - -#include "namespace.h" - -#include - -void -__dumpmonetarylocale() -{ - const char *gp; - - (void)printf("int_curr_symbol = \"%s\"\n", - _CurrentMonetaryLocale->int_curr_symbol); - (void)printf("currency_symbol = \"%s\"\n", - _CurrentMonetaryLocale->currency_symbol); - (void)printf("mon_decimal_point = \"%s\"\n", - _CurrentMonetaryLocale->mon_decimal_point); - (void)printf("mon_thousands_sep = \"%s\"\n", - _CurrentMonetaryLocale->mon_thousands_sep); - (void)printf("mon_grouping = "); - for (gp = _CurrentMonetaryLocale->mon_grouping; *gp != '\0'; gp++) { - if (gp != _CurrentMonetaryLocale->mon_grouping) - (void)fputc(';', stdout); - (void)printf("%d", *gp); - } - (void)fputc('\n', stdout); - (void)printf("positive_sign = \"%s\"\n", - _CurrentMonetaryLocale->positive_sign); - (void)printf("negative_sign = \"%s\"\n", - _CurrentMonetaryLocale->negative_sign); - (void)printf("int_frac_digits = %d\n", - _CurrentMonetaryLocale->int_frac_digits); - (void)printf("frac_digits = %d\n", - _CurrentMonetaryLocale->frac_digits); - (void)printf("p_cs_precedes = %d\n", - _CurrentMonetaryLocale->p_cs_precedes); - (void)printf("p_sep_by_space = %d\n", - _CurrentMonetaryLocale->p_sep_by_space); - (void)printf("n_cs_precedes = %d\n", - _CurrentMonetaryLocale->n_cs_precedes); - (void)printf("n_sep_by_space = %d\n", - _CurrentMonetaryLocale->n_sep_by_space); - (void)printf("p_sign_posn = %d\n", - _CurrentMonetaryLocale->p_sign_posn); - (void)printf("n_sign_posn = %d\n", - _CurrentMonetaryLocale->n_sign_posn); - (void)printf("int_p_cs_precedes = %d\n", - _CurrentMonetaryLocale->int_p_cs_precedes); - (void)printf("int_n_cs_precedes = %d\n", - _CurrentMonetaryLocale->int_n_cs_precedes); - (void)printf("int_p_sep_by_space = %d\n", - _CurrentMonetaryLocale->int_p_sep_by_space); - (void)printf("int_n_sep_by_space = %d\n", - _CurrentMonetaryLocale->int_n_sep_by_space); - (void)printf("int_p_sign_posn = %d\n", - _CurrentMonetaryLocale->int_p_sign_posn); - (void)printf("int_n_sign_posn = %d\n", - _CurrentMonetaryLocale->int_n_sign_posn); -} -#endif Index: lib/libc/locale/lcmonetary.h =================================================================== RCS file: lib/libc/locale/lcmonetary.h diff -N lib/libc/locale/lcmonetary.h --- lib/libc/locale/lcmonetary.h 17 May 2008 03:49:54 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,33 +0,0 @@ -/* $NetBSD: lcmonetary.h,v 1.1 2008/05/17 03:49:54 ginsbach Exp $ */ -/* - * Copyright (c) 2008 The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by Brian Ginsbach. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -__BEGIN_DECLS -int __loadmonetary(const char *); -__END_DECLS Index: lib/libc/locale/lcnumeric.c =================================================================== RCS file: lib/libc/locale/lcnumeric.c diff -N lib/libc/locale/lcnumeric.c --- lib/libc/locale/lcnumeric.c 17 May 2008 03:49:54 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,86 +0,0 @@ -/* $NetBSD: lcnumeric.c,v 1.1 2008/05/17 03:49:54 ginsbach Exp $ */ -/* - * Copyright (c) 2008, The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by Brian Ginsbach. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#include -#if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: lcnumeric.c,v 1.1 2008/05/17 03:49:54 ginsbach Exp $"); -#endif /* LIBC_SCCS and not lint */ - -#include -#include - -#include - -#include "localeio.h" -#include "lcnumeric.h" - -#define NSTRINGS (sizeof(_NumericLocale)/sizeof(const char **)) - -int -__loadnumeric(const char *filename) -{ - const char **gpp; - - _DIAGASSERT(filename != NULL); - - if (!__loadlocale(filename, NSTRINGS, 0, sizeof(_NumericLocale), - &_CurrentNumericLocale, &_DefaultNumericLocale)) { - return 0; - } - - gpp = __UNCONST(&_CurrentNumericLocale->grouping); - *gpp = __convertgrouping(_CurrentNumericLocale->grouping); - - return 1; -} - -#ifdef LOCALE_DEBUG - -#include "namespace.h" - -#include - -void -__dumpnumericlocale() -{ - const char *gp; - - (void)printf("decimal_point = \"%s\"\n", - _CurrentNumericLocale->decimal_point); - (void)printf("thousands_sep = \"%s\"\n", - _CurrentNumericLocale->thousands_sep); - (void)printf("grouping = "); - for (gp = _CurrentNumericLocale->grouping; *gp != '\0'; gp++) { - if (gp != _CurrentNumericLocale->grouping) - (void)fputc(';', stdout); - (void)printf("\\%03o", *gp); - } -} -#endif /* LOCALE_DEBUG */ Index: lib/libc/locale/lcnumeric.h =================================================================== RCS file: lib/libc/locale/lcnumeric.h diff -N lib/libc/locale/lcnumeric.h --- lib/libc/locale/lcnumeric.h 17 May 2008 03:49:54 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,30 +0,0 @@ -/* $NetBSD: lcnumeric.h,v 1.1 2008/05/17 03:49:54 ginsbach Exp $ */ -/* - * Copyright (c) 2008, The NetBSD Foundation. - * All Rights Reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -__BEGIN_DECLS -int __loadnumeric(const char *); -__END_DECLS Index: lib/libc/locale/lctime.c =================================================================== RCS file: lib/libc/locale/lctime.c diff -N lib/libc/locale/lctime.c --- lib/libc/locale/lctime.c 17 May 2008 03:49:54 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,92 +0,0 @@ -/* $NetBSD: lctime.c,v 1.1 2008/05/17 03:49:54 ginsbach Exp $ */ -/* - * Copyright (c) 2008, The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by Brian Ginsbach. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#include -#if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: lctime.c,v 1.1 2008/05/17 03:49:54 ginsbach Exp $"); -#endif /* LIBC_SCCS and not lint */ - -#include -#include - -#include - -#include "localeio.h" -#include "lctime.h" - -#define NSTRINGS (sizeof(_TimeLocale)/sizeof(const char **)) - -int -__loadtime(const char *filename) -{ - - _DIAGASSERT(filename != NULL); - - return (__loadlocale(filename, NSTRINGS, 0, sizeof(_TimeLocale), - &_CurrentTimeLocale, &_DefaultTimeLocale)); -} - -#ifdef LOCALE_DEBUG - -#include "namespace.h" - -#include - -void -__dumptimelocale() -{ - int i; - - for (i = 0; i < 7; i++) - (void)printf("abday[%d] = \"%s\"\n", - i, _CurrentTimeLocale->abday[i]); - - for (i = 0; i < 7; i++) - (void)printf("day[%d] = \"%s\"\n", - i, _CurrentTimeLocale->day[i]); - - for (i = 0; i < 12; i++) - (void)printf("abmon[%d] = \"%s\"\n", - i, _CurrentTimeLocale->abmon[i]); - - for (i = 0; i < 12; i++) - (void)printf("mon[%d] = \"%s\"\n", - i, _CurrentTimeLocale->mon[i]); - - for (i = 0; i < 2; i++) - (void)printf("am_pm[%d] = \"%s\"\n", - i, _CurrentTimeLocale->am_pm[i]); - - (void)printf("d_t_fmt = \"%s\"\n", _CurrentTimeLocale->d_t_fmt); - (void)printf("d_fmt = \"%s\"\n", _CurrentTimeLocale->d_fmt); - (void)printf("t_fmt = \"%s\"\n", _CurrentTimeLocale->t_fmt); - (void)printf("t_fmt_ampm = \"%s\"\n", _CurrentTimeLocale->t_fmt_ampm); -} -#endif /* LOCALE_DEBUG */ Index: lib/libc/locale/lctime.h =================================================================== RCS file: lib/libc/locale/lctime.h diff -N lib/libc/locale/lctime.h --- lib/libc/locale/lctime.h 17 May 2008 03:49:54 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,33 +0,0 @@ -/* $NetBSD: lctime.h,v 1.1 2008/05/17 03:49:54 ginsbach Exp $ */ -/* - * Copyright (c) 2008 The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -__BEGIN_DECLS -int __loadtime(const char *); -__END_DECLS Index: lib/libc/locale/localeconv.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/localeconv.c,v retrieving revision 1.14 diff -u -r1.14 localeconv.c --- lib/libc/locale/localeconv.c 26 May 2007 13:14:13 -0000 1.14 +++ lib/libc/locale/localeconv.c 14 Dec 2008 18:55:47 -0000 @@ -1,85 +1,48 @@ -/* $NetBSD: localeconv.c,v 1.14 2007/05/26 13:14:13 tnozaki Exp $ */ +/* $NetBSD$ */ -/* - * Written by J.T. Conklin . - * Public domain. +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. */ #include #if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: localeconv.c,v 1.14 2007/05/26 13:14:13 tnozaki Exp $"); +__RCSID("$NetBSD$"); #endif /* LIBC_SCCS and not lint */ -#include +#include +#include +#define __SETLOCALE_SOURCE__ #include -/* - * The localeconv() function constructs a struct lconv from the current - * monetary and numeric locales. - * - * Because localeconv() may be called many times (especially by library - * routines like printf() & strtod()), the appropriate members of the - * lconv structure are computed only when the monetary or numeric - * locale has been changed. - */ -int __mlocale_changed = 1; -int __nlocale_changed = 1; +#include "setlocale_local.h" -/* - * Return the current locale conversion. - */ struct lconv * localeconv() { - static struct lconv ret; - - if (__mlocale_changed) { - /* LC_MONETARY */ - ret.int_curr_symbol = - __UNCONST(_CurrentMonetaryLocale->int_curr_symbol); - ret.currency_symbol = - __UNCONST(_CurrentMonetaryLocale->currency_symbol); - ret.mon_decimal_point = - __UNCONST(_CurrentMonetaryLocale->mon_decimal_point); - ret.mon_thousands_sep = - __UNCONST(_CurrentMonetaryLocale->mon_thousands_sep); - ret.mon_grouping = - __UNCONST(_CurrentMonetaryLocale->mon_grouping); - ret.positive_sign = - __UNCONST(_CurrentMonetaryLocale->positive_sign); - ret.negative_sign = - __UNCONST(_CurrentMonetaryLocale->negative_sign); - ret.int_frac_digits = _CurrentMonetaryLocale->int_frac_digits; - ret.frac_digits = _CurrentMonetaryLocale->frac_digits; - ret.p_cs_precedes = _CurrentMonetaryLocale->p_cs_precedes; - ret.p_sep_by_space = _CurrentMonetaryLocale->p_sep_by_space; - ret.n_cs_precedes = _CurrentMonetaryLocale->n_cs_precedes; - ret.n_sep_by_space = _CurrentMonetaryLocale->n_sep_by_space; - ret.p_sign_posn = _CurrentMonetaryLocale->p_sign_posn; - ret.n_sign_posn = _CurrentMonetaryLocale->n_sign_posn; - ret.int_p_cs_precedes = - _CurrentMonetaryLocale->int_p_cs_precedes; - ret.int_n_cs_precedes = - _CurrentMonetaryLocale->int_n_cs_precedes; - ret.int_p_sep_by_space = - _CurrentMonetaryLocale->int_p_sep_by_space; - ret.int_n_sep_by_space = - _CurrentMonetaryLocale->int_n_sep_by_space; - ret.int_p_sign_posn = _CurrentMonetaryLocale->int_p_sign_posn; - ret.int_n_sign_posn = _CurrentMonetaryLocale->int_n_sign_posn; - __mlocale_changed = 0; - } - - if (__nlocale_changed) { - /* LC_NUMERIC */ - ret.decimal_point = - __UNCONST(_CurrentNumericLocale->decimal_point); - ret.thousands_sep = - __UNCONST(_CurrentNumericLocale->thousands_sep); - ret.grouping = - __UNCONST(_CurrentNumericLocale->grouping); - __nlocale_changed = 0; - } + struct _locale_impl_t *impl; - return (&ret); + impl = *_current_locale(); + return &impl->cache.ldata; } Index: lib/libc/locale/localeio.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/localeio.c,v retrieving revision 1.1 diff -u -r1.1 localeio.c --- lib/libc/locale/localeio.c 17 May 2008 03:49:54 -0000 1.1 +++ lib/libc/locale/localeio.c 14 Dec 2008 18:55:47 -0000 @@ -35,11 +35,11 @@ #include "namespace.h" -#include #include #include #include +#include #include #include #include @@ -51,10 +51,10 @@ #include "localeio.h" int -__loadlocale(const char *name, size_t nstr, size_t nbytes, size_t localesize, - void *currentlocale, const void *defaultlocale) +__loadlocale(const char *name, size_t nstr, size_t nbytes, + size_t localesize, void *currentlocale) { - int fd, i; + int fd, i, ret; unsigned char **ap, *buf, *bp, *cp, *cbp, *ebp; unsigned char ***locale; struct stat st; @@ -63,29 +63,37 @@ _DIAGASSERT(name != NULL); _DIAGASSERT(localesize != 0); _DIAGASSERT(currentlocale != NULL); - _DIAGASSERT(defaultlocale != NULL); if ((fd = open(name, O_RDONLY)) == -1) - return 0; + return ENOENT; - if ((fstat(fd, &st) == -1) || (st.st_size <= 0)) + if ((fstat(fd, &st) == -1) || !S_ISREG(st.st_mode) || + (st.st_size <= 0)) { + ret = EFTYPE; goto error1; + } bufsize = localesize + (size_t)st.st_size; - if ((buf = malloc(bufsize)) == NULL) + if ((buf = malloc(bufsize)) == NULL) { + ret = ENOMEM; goto error1; + } bp = buf + localesize; - if (read(fd, bp, (size_t)st.st_size) != st.st_size) + if (read(fd, bp, (size_t)st.st_size) != st.st_size) { + ret = EFTYPE; goto error2; + } ap = (unsigned char **)(void *)buf; for (i = 0, ebp = buf + bufsize; i < nstr; i++) { ap[i] = bp; while (bp != ebp && *bp != '\n') bp++; - if (bp == ebp) + if (bp == ebp) { + ret = EFTYPE; goto error2; + } *bp++ = '\0'; } @@ -95,8 +103,10 @@ while (bp != ebp && *bp != '\n') bp++; - if (bp == ebp) + if (bp == ebp) { + ret = EFTYPE; goto error2; + } /* ignore overflow/underflow and bad characters */ n = (unsigned char)strtol((char *)cbp, NULL, 0); cp[i] = (unsigned char)(n & CHAR_MAX); @@ -104,51 +114,15 @@ } locale = currentlocale; - if (*locale != defaultlocale) - free(*locale); *locale = (unsigned char **)(void *)buf; (void)close(fd); - return 1; + return 0; error2: free(buf); + error1: (void)close(fd); - - return 0; -} - -/* - * Convert a grouping sequence string into POSIX form. - * - * Examples: "3;3;-1" -> "\003\003\177\000" - * "3" -> "\003\000" - */ - -static const char nogrouping[] = { CHAR_MAX, '\0' }; - -const char * -__convertgrouping(const char *str) -{ - char *src, *dst; - - _DIAGASSERT(str != NULL); - - src = dst = __UNCONST(str); - - while (*src != '\0') { - char *ep; - int n; - - if ((n = strtol(src, &ep, 0)) >= CHAR_MAX || - ((*ep != ';') && (*ep != '\0'))) - return nogrouping; /* invalid grouping string */ - - *dst++ = n & CHAR_MAX; - src = (*ep == ';')? ep + 1 : ep; - } - *dst = '\0'; - - return (dst == str)? nogrouping : str; + return ret; } Index: lib/libc/locale/localeio.h =================================================================== RCS file: /cvsroot/src/lib/libc/locale/localeio.h,v retrieving revision 1.1 diff -u -r1.1 localeio.h --- lib/libc/locale/localeio.h 17 May 2008 03:49:54 -0000 1.1 +++ lib/libc/locale/localeio.h 14 Dec 2008 18:55:47 -0000 @@ -29,6 +29,5 @@ */ __BEGIN_DECLS -int __loadlocale(const char *, size_t, size_t, size_t, void *, const void *); -const char * __convertgrouping(const char *); +int __loadlocale(const char *, size_t, size_t, size_t, void *); __END_DECLS Index: lib/libc/locale/localeio_lc_ctype.c =================================================================== RCS file: lib/libc/locale/localeio_lc_ctype.c diff -N lib/libc/locale/localeio_lc_ctype.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/localeio_lc_ctype.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,114 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "reentrant.h" +#include +#include +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "aliasname_local.h" +#include "bsdctype.h" +#include "ctypeio.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_localeio_LC_CTYPE_, name) + +/* + * macro required by nb_lc_template(_decl).h + */ +#define _CATEGORY_TYPE _BSDCTypeLocale + +#include "nb_lc_template_decl.h" + +static int +/*ARGSUSED*/ +_localeio_LC_CTYPE_create_impl(const char * __restrict root, + const char * __restrict name, _BSDCTypeLocale ** __restrict pdata) +{ + char path[PATH_MAX + 1]; + + _DIAGASSERT(root != NULL); + _DIAGASSERT(name != NULL); + _DIAGASSERT(pdata != NULL); + + snprintf(path, sizeof(path), + "%s/%s/LC_CTYPE", root, name); + return __loadctype(path, pdata); +} + +static __inline void +_PREFIX(build_cache)(struct _locale_cache_t * __restrict cache, + _BSDCTypeLocale * __restrict data) +{ + _DIAGASSERT(cache != NULL); + _DIAGASSERT(data != NULL); + + cache->ctype_tab = data->ctype_tab; + cache->tolower_tab = data->tolower_tab; + cache->toupper_tab = data->toupper_tab; + cache->mb_cur_max = (size_t)1; +} + +static __inline void +_PREFIX(fixup)(_BSDCTypeLocale *data) +{ + _DIAGASSERT(data != NULL); + + _ctype_ = data->ctype_tab; + _tolower_tab_ = data->tolower_tab; + _toupper_tab_ = data->toupper_tab; +} + +/* + * macro required by nb_lc_template.h + */ +#define _CATEGORY_ID LC_CTYPE +#define _CATEGORY_NAME "LC_CTYPE" +#define _CATEGORY_DEFAULT _DefaultBSDCTypeLocale + +#include "nb_lc_template.h" +#include "generic_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_localeio_LC_CTYPE_); Index: lib/libc/locale/localeio_lc_messages.c =================================================================== RCS file: lib/libc/locale/localeio_lc_messages.c diff -N lib/libc/locale/localeio_lc_messages.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/localeio_lc_messages.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,83 @@ +/* $NetBSD$ */ + +/* + * Copyright (c) 2008, The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Brian Ginsbach. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "reentrant.h" +#include +#include +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "aliasname_local.h" +#include "localeio.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_localeio_LC_MESSAGES_, name) + +#include "nb_lc_messages_misc.h" +#include "nb_lc_template_decl.h" + +#define NSTRINGS (sizeof(_MessagesLocale)/sizeof(const char **)) + +static int +_localeio_LC_MESSAGES_create_impl(const char * __restrict root, + const char * __restrict name, _MessagesLocale ** __restrict pdata) +{ + char path[PATH_MAX + 1]; + + _DIAGASSERT(root != NULL); + _DIAGASSERT(name != NULL); + _DIAGASSERT(pdata != NULL); + + snprintf(path, sizeof(path), + "%s/%s/LC_MESSAGES/SYS_LC_MESSAGES", root, name); + return __loadlocale(path, NSTRINGS, 0, sizeof(_MessagesLocale), + (void *)pdata); +} + +#include "nb_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_localeio_LC_MESSAGES_); Index: lib/libc/locale/localeio_lc_monetary.c =================================================================== RCS file: lib/libc/locale/localeio_lc_monetary.c diff -N lib/libc/locale/localeio_lc_monetary.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/localeio_lc_monetary.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,95 @@ +/* $NetBSD$ */ + +/* + * Copyright (c) 2008, The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Brian Ginsbach. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "reentrant.h" +#include +#include +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "aliasname_local.h" +#include "fix_grouping.h" +#include "localeio.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_localeio_LC_MONETARY_, name) + +#include "nb_lc_monetary_misc.h" +#include "nb_lc_template_decl.h" + +#define NSTRINGS \ + (offsetof(_MonetaryLocale, int_frac_digits)/sizeof(const char **)) +#define NCHARS \ + (offsetof(_MonetaryLocale, int_n_sign_posn) - \ + offsetof(_MonetaryLocale, int_frac_digits) + 1) + +static int +_localeio_LC_MONETARY_create_impl(const char * __restrict root, + const char * __restrict name, _MonetaryLocale ** __restrict pdata) +{ + char path[PATH_MAX + 1]; + int ret; + + _DIAGASSERT(root != NULL); + _DIAGASSERT(name != NULL); + _DIAGASSERT(pdata != NULL); + + snprintf(path, sizeof(path), + "%s/%s/LC_MONETARY", root, name); + ret = __loadlocale(path, NSTRINGS, NCHARS, sizeof(_MonetaryLocale), + (void *)pdata); + if (!ret) { + (*pdata)->mon_grouping = + __fix_locale_grouping_str((*pdata)->mon_grouping); + } + return ret; +} + +#include "nb_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_localeio_LC_MONETARY_); Index: lib/libc/locale/localeio_lc_numeric.c =================================================================== RCS file: lib/libc/locale/localeio_lc_numeric.c diff -N lib/libc/locale/localeio_lc_numeric.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/localeio_lc_numeric.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,90 @@ +/* $NetBSD$ */ + +/* + * Copyright (c) 2008, The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Brian Ginsbach. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "reentrant.h" +#include +#include +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "aliasname_local.h" +#include "fix_grouping.h" +#include "localeio.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_localeio_LC_NUMERIC_, name) + +#include "nb_lc_numeric_misc.h" +#include "nb_lc_template_decl.h" + +#define NSTRINGS (sizeof(_NumericLocale)/sizeof(const char **)) + +static int +_localeio_LC_NUMERIC_create_impl(const char * __restrict root, + const char * __restrict name, _NumericLocale ** __restrict pdata) +{ + char path[PATH_MAX + 1]; + int ret; + + _DIAGASSERT(root != NULL); + _DIAGASSERT(name != NULL); + _DIAGASSERT(pdata != NULL); + + snprintf(path, sizeof(path), + "%s/%s/LC_NUMERIC", root, name); + ret = __loadlocale(path, NSTRINGS, 0, sizeof(_NumericLocale), + (void *)pdata); + if (!ret) { + (*pdata)->grouping = + __fix_locale_grouping_str((*pdata)->grouping); + } + return ret; +} + +#include "nb_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_localeio_LC_NUMERIC_); Index: lib/libc/locale/localeio_lc_time.c =================================================================== RCS file: lib/libc/locale/localeio_lc_time.c diff -N lib/libc/locale/localeio_lc_time.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/localeio_lc_time.c 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,84 @@ +/* $NetBSD$ */ + +/* + * Copyright (c) 2008, The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Brian Ginsbach. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#if defined(LIBC_SCCS) && !defined(lint) +__RCSID("$NetBSD$"); +#endif /* LIBC_SCCS and not lint */ + +#include "reentrant.h" +#include +#include +#include +#include +#include +#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include +#include +#include + +#include "setlocale_local.h" + +#include "aliasname_local.h" +#include "fix_grouping.h" +#include "localeio.h" + +/* + * macro required by all template headers + */ +#define _PREFIX(name) __CONCAT(_localeio_LC_TIME_, name) + +#include "nb_lc_time_misc.h" +#include "nb_lc_template_decl.h" + +#define NSTRINGS (sizeof(_TimeLocale)/sizeof(const char **)) + +static int +_localeio_LC_TIME_create_impl(const char * __restrict root, + const char * __restrict name, _TimeLocale ** __restrict pdata) +{ + char path[PATH_MAX + 1]; + + _DIAGASSERT(root != NULL); + _DIAGASSERT(name != NULL); + _DIAGASSERT(pdata != NULL); + + snprintf(path, sizeof(path), + "%s/%s/LC_TIME", root, name); + return __loadlocale(path, NSTRINGS, 0, sizeof(_TimeLocale), + (void *)pdata); +} + +#include "nb_lc_template.h" +_LOCALE_CATEGORY_ENTRY(_localeio_LC_TIME_); Index: lib/libc/locale/multibyte.h =================================================================== RCS file: /cvsroot/src/lib/libc/locale/multibyte.h,v retrieving revision 1.3 diff -u -r1.3 multibyte.h --- lib/libc/locale/multibyte.h 29 Apr 2003 14:53:12 -0000 1.3 +++ lib/libc/locale/multibyte.h 14 Dec 2008 18:55:47 -0000 @@ -123,4 +123,4 @@ } } -#endif +#endif /*_MULTIBYTE_H_*/ Index: lib/libc/locale/multibyte_amd1.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/multibyte_amd1.c,v retrieving revision 1.5 diff -u -r1.5 multibyte_amd1.c --- lib/libc/locale/multibyte_amd1.c 5 Mar 2003 20:18:16 -0000 1.5 +++ lib/libc/locale/multibyte_amd1.c 14 Dec 2008 18:55:47 -0000 @@ -1,7 +1,7 @@ /* $NetBSD: multibyte_amd1.c,v 1.5 2003/03/05 20:18:16 tshiozak Exp $ */ /*- - * Copyright (c)2002 Citrus Project, + * Copyright (c)2002, 2008 Citrus Project, * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -31,22 +31,34 @@ __RCSID("$NetBSD: multibyte_amd1.c,v 1.5 2003/03/05 20:18:16 tshiozak Exp $"); #endif /* LIBC_SCCS and not lint */ +#include #include -#include #include -#include -#include -#include +#include +#define __SETLOCALE_SOURCE__ +#include +#include + +#include "setlocale_local.h" + +#include "citrus_module.h" +#include "citrus_ctype.h" #include "rune.h" #include "multibyte.h" +#define _RUNE_LOCALE() \ + ((_RuneLocale *)(*_current_locale())->part_impl[(size_t)LC_CTYPE]) + +#define _CITRUS_CTYPE() \ + (_RUNE_LOCALE()->rl_citrus_ctype) + size_t mbrlen(const char *s, size_t n, mbstate_t *ps) { size_t ret; int err0; - _fixup_ps(_CurrentRuneLocale, ps, s==NULL); + _fixup_ps(_RUNE_LOCALE(), ps, s == NULL); err0 = _citrus_ctype_mbrlen(_ps_to_ctype(ps), s, n, _ps_to_private(ps), &ret); @@ -67,7 +79,7 @@ return 1; if (_ps_to_runelocale(ps) == NULL) - rl = _CurrentRuneLocale; + rl = _RUNE_LOCALE(); else rl = _ps_to_runelocale(ps); @@ -86,7 +98,7 @@ size_t ret; int err0; - _fixup_ps(_CurrentRuneLocale, ps, s==NULL); + _fixup_ps(_RUNE_LOCALE(), ps, s == NULL); err0 = _citrus_ctype_mbrtowc(_ps_to_ctype(ps), pwc, s, n, _ps_to_private(ps), &ret); @@ -102,7 +114,7 @@ size_t ret; int err0; - _fixup_ps(_CurrentRuneLocale, ps, s==NULL); + _fixup_ps(_RUNE_LOCALE(), ps, s == NULL); err0 = _citrus_ctype_mbsrtowcs(_ps_to_ctype(ps), pwcs, s, n, _ps_to_private(ps), &ret); @@ -118,7 +130,7 @@ size_t ret; int err0; - _fixup_ps(_CurrentRuneLocale, ps, s==NULL); + _fixup_ps(_RUNE_LOCALE(), ps, s == NULL); err0 = _citrus_ctype_wcrtomb(_ps_to_ctype(ps), s, wc, _ps_to_private(ps), &ret); @@ -134,7 +146,7 @@ size_t ret; int err0; - _fixup_ps(_CurrentRuneLocale, ps, s==NULL); + _fixup_ps(_RUNE_LOCALE(), ps, s == NULL); err0 = _citrus_ctype_wcsrtombs(_ps_to_ctype(ps), s, ppwcs, n, _ps_to_private(ps), &ret); @@ -150,7 +162,7 @@ wint_t ret; int err0; - err0 = _citrus_ctype_btowc(_to_cur_ctype(), c, &ret); + err0 = _citrus_ctype_btowc(_CITRUS_CTYPE(), c, &ret); if (err0) errno = err0; @@ -163,7 +175,7 @@ int ret; int err0; - err0 = _citrus_ctype_wctob(_to_cur_ctype(), wc, &ret); + err0 = _citrus_ctype_wctob(_CITRUS_CTYPE(), wc, &ret); if (err0) errno = err0; Index: lib/libc/locale/multibyte_c90.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/multibyte_c90.c,v retrieving revision 1.4 diff -u -r1.4 multibyte_c90.c --- lib/libc/locale/multibyte_c90.c 5 Mar 2003 20:18:16 -0000 1.4 +++ lib/libc/locale/multibyte_c90.c 14 Dec 2008 18:55:47 -0000 @@ -1,7 +1,7 @@ /* $NetBSD: multibyte_c90.c,v 1.4 2003/03/05 20:18:16 tshiozak Exp $ */ /*- - * Copyright (c)2002 Citrus Project, + * Copyright (c)2002, 2008 Citrus Project, * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -33,13 +33,24 @@ #include #include -#include #include +#include +#define __SETLOCALE_SOURCE__ +#include +#include #include -#include -#include + +#include "setlocale_local.h" + +#include "citrus_module.h" +#include "citrus_ctype.h" #include "rune.h" -#include "multibyte.h" + +#define _RUNE_LOCALE() \ + ((_RuneLocale *)(*_current_locale())->part_impl[(size_t)LC_CTYPE]) + +#define _CITRUS_CTYPE() \ + (_RUNE_LOCALE()->rl_citrus_ctype) int mblen(const char *s, size_t n) @@ -47,7 +58,7 @@ int ret; int err0; - err0 = _citrus_ctype_mblen(_to_cur_ctype(), s, n, &ret); + err0 = _citrus_ctype_mblen(_CITRUS_CTYPE(), s, n, &ret); if (err0) errno = err0; @@ -60,7 +71,7 @@ size_t ret; int err0; - err0 = _citrus_ctype_mbstowcs(_to_cur_ctype(), pwcs, s, n, &ret); + err0 = _citrus_ctype_mbstowcs(_CITRUS_CTYPE(), pwcs, s, n, &ret); if (err0) errno = err0; @@ -73,7 +84,7 @@ int ret; int err0; - err0 = _citrus_ctype_mbtowc(_to_cur_ctype(), pw, s, n, &ret); + err0 = _citrus_ctype_mbtowc(_CITRUS_CTYPE(), pw, s, n, &ret); if (err0) errno = err0; @@ -86,7 +97,7 @@ size_t ret; int err0; - err0 = _citrus_ctype_wcstombs(_to_cur_ctype(), s, wcs, n, &ret); + err0 = _citrus_ctype_wcstombs(_CITRUS_CTYPE(), s, wcs, n, &ret); if (err0) errno = err0; @@ -99,7 +110,7 @@ int ret; int err0; - err0 = _citrus_ctype_wctomb(_to_cur_ctype(), s, wc, &ret); + err0 = _citrus_ctype_wctomb(_CITRUS_CTYPE(), s, wc, &ret); if (err0) errno = err0; Index: lib/libc/locale/nb_lc_messages_misc.h =================================================================== RCS file: lib/libc/locale/nb_lc_messages_misc.h diff -N lib/libc/locale/nb_lc_messages_misc.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/nb_lc_messages_misc.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,65 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _NB_LC_MESSAGES_MISC_H_ +#define _NB_LC_MESSAGES_MISC_H_ + +/* + * macro required by nb_lc_template(_decl).h + */ +#define _CATEGORY_TYPE _MessagesLocale + +static __inline void +_PREFIX(build_cache)(struct _locale_cache_t * __restrict cache, + _MessagesLocale * __restrict data) +{ + _DIAGASSERT(cache != NULL); + _DIAGASSERT(data != NULL); + + cache->items[(size_t)YESSTR ] = data->yesstr; + cache->items[(size_t)YESEXPR] = data->yesexpr; + cache->items[(size_t)NOSTR ] = data->nostr; + cache->items[(size_t)NOEXPR ] = data->noexpr; +} + +static __inline void +_PREFIX(fixup)(_MessagesLocale *data) +{ + _DIAGASSERT(data != NULL); + + _CurrentMessagesLocale = data; +} + +/* + * macro required by nb_lc_template.h + */ +#define _CATEGORY_ID LC_MESSAGES +#define _CATEGORY_NAME "LC_MESSAGES" +#define _CATEGORY_DEFAULT _DefaultMessagesLocale + +#endif /*_NB_LC_MESSAGES_MISC_H_*/ Index: lib/libc/locale/nb_lc_monetary_misc.h =================================================================== RCS file: lib/libc/locale/nb_lc_monetary_misc.h diff -N lib/libc/locale/nb_lc_monetary_misc.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/nb_lc_monetary_misc.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,85 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _NB_LC_MONETARY_MISC_H_ +#define _NB_LC_MONETARY_MISC_H_ + +/* + * macro required by nb_lc_template(_decl).h + */ +#define _CATEGORY_TYPE _MonetaryLocale + +static __inline void +_PREFIX(build_cache)(struct _locale_cache_t * __restrict cache, + _MonetaryLocale * __restrict data) +{ + _DIAGASSERT(cache != NULL); + _DIAGASSERT(data != NULL); + + cache->ldata.int_curr_symbol = __UNCONST(data->int_curr_symbol); + cache->ldata.currency_symbol = __UNCONST(data->currency_symbol); + cache->ldata.mon_decimal_point = __UNCONST(data->mon_decimal_point); + cache->ldata.mon_thousands_sep = __UNCONST(data->mon_thousands_sep); + cache->ldata.mon_grouping = __UNCONST(data->mon_grouping); + cache->ldata.positive_sign = __UNCONST(data->positive_sign); + cache->ldata.negative_sign = __UNCONST(data->negative_sign); + + cache->ldata.int_frac_digits = data->int_frac_digits; + cache->ldata.frac_digits = data->frac_digits; + cache->ldata.p_cs_precedes = data->p_cs_precedes; + cache->ldata.p_sep_by_space = data->p_sep_by_space; + cache->ldata.n_cs_precedes = data->n_cs_precedes; + cache->ldata.n_sep_by_space = data->n_sep_by_space; + cache->ldata.p_sign_posn = data->p_sign_posn; + cache->ldata.n_sign_posn = data->n_sign_posn; + cache->ldata.int_p_cs_precedes = data->int_p_cs_precedes; + cache->ldata.int_n_cs_precedes = data->int_n_cs_precedes; + cache->ldata.int_p_sep_by_space = data-> int_p_sep_by_space; + cache->ldata.int_n_sep_by_space = data->int_n_sep_by_space; + cache->ldata.int_p_sign_posn = data->int_p_sign_posn; + cache->ldata.int_n_sign_posn = data->int_n_sign_posn; + + cache->items[(size_t)CRNCYSTR] = NULL; /* NOT IMPLEMENTED YET */ +} + +static __inline void +_PREFIX(fixup)(_MonetaryLocale *data) +{ + _DIAGASSERT(data != NULL); + + _CurrentMonetaryLocale = data; +} + +/* + * macro required by nb_lc_template.h + */ +#define _CATEGORY_ID LC_MONETARY +#define _CATEGORY_NAME "LC_MONETARY" +#define _CATEGORY_DEFAULT _DefaultMonetaryLocale + +#endif /*_RUNE_LC_MONETARY_MISC_H_*/ Index: lib/libc/locale/nb_lc_numeric_misc.h =================================================================== RCS file: lib/libc/locale/nb_lc_numeric_misc.h diff -N lib/libc/locale/nb_lc_numeric_misc.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/nb_lc_numeric_misc.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,67 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _NB_LC_NUMERIC_MISC_H_ +#define _NB_LC_NUMERIC_MISC_H_ + +/* + * macro required by nb_lc_template(_decl).h + */ +#define _CATEGORY_TYPE _NumericLocale + +static __inline void +_PREFIX(build_cache)(struct _locale_cache_t * __restrict cache, + _NumericLocale * __restrict data) +{ + _DIAGASSERT(cache != NULL); + _DIAGASSERT(data != NULL); + + cache->ldata.decimal_point = __UNCONST(data->decimal_point); + cache->ldata.thousands_sep = __UNCONST(data->thousands_sep); + cache->ldata.grouping = __UNCONST(data->grouping); + + cache->items[(size_t)RADIXCHAR] = data->decimal_point; + cache->items[(size_t)THOUSEP ] = data->thousands_sep; +} + +static __inline void +_PREFIX(fixup)(_NumericLocale *data) +{ + _DIAGASSERT(data != NULL); + + _CurrentNumericLocale = data; +} + +/* + * macro required by nb_lc_template.h + */ +#define _CATEGORY_ID LC_NUMERIC +#define _CATEGORY_NAME "LC_NUMERIC" +#define _CATEGORY_DEFAULT _DefaultNumericLocale + +#endif /*_NB_LC_NUMERIC_MISC_H_*/ Index: lib/libc/locale/nb_lc_template.h =================================================================== RCS file: lib/libc/locale/nb_lc_template.h diff -N lib/libc/locale/nb_lc_template.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/nb_lc_template.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,248 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)1999, 2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +/*- + * Copyright (c) 1998 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Paul Kranenburg. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +/*- + * Copyright (c) 1993 + * The Regents of the University of California. All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * Paul Borman at Krystal Technologies. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _NB_LC_TEMPLATE_H_ +#define _NB_LC_TEMPLATE_H_ + +#define _nb_part_t _PREFIX(part_t) +#define _nb_part_cache _PREFIX(part_cache) +#define _nb_default_c _PREFIX(default_c) +#define _nb_default_posix _PREFIX(default_posix) +#define _nb_mutex _PREFIX(mutex) + +typedef struct _nb_part_t { + char name[_LOCALENAME_LEN_MAX]; + _CATEGORY_TYPE *impl; + SIMPLEQ_ENTRY(_nb_part_t) entry; +} _nb_part_t; + +static SIMPLEQ_HEAD(, _nb_part_t) _nb_part_cache = + SIMPLEQ_HEAD_INITIALIZER(_nb_part_cache); + +static const _nb_part_t _nb_default_c = { + _C_LOCALE, + __UNCONST(&_CATEGORY_DEFAULT), + { NULL }, +}; + +static const _nb_part_t _nb_default_posix = { + _POSIX_LOCALE, + __UNCONST(&_CATEGORY_DEFAULT), + { NULL }, +}; + +#ifdef _REENTRANT +static mutex_t _nb_mutex = MUTEX_INITIALIZER; +#endif + +static int +_PREFIX(load_sub)(const char * __restrict name, const char * __restrict real, + _nb_part_t ** __restrict part, int force) +{ + _nb_part_t *p, *q; + int ret; + + _DIAGASSERT(name != NULL); + _DIAGASSERT(part != NULL); + + if (!strcmp(_C_LOCALE, name)) { + p = __UNCONST(&_nb_default_c); + } else if (!strcmp(_POSIX_LOCALE, name)) { + p = __UNCONST(&_nb_default_posix); + } else { + SIMPLEQ_FOREACH(p, &_nb_part_cache, entry) { + if (!strcmp((const char *)&p->name[0], name)) + goto found; + } + p = malloc(sizeof(*p)); + if (p == NULL) + return ENOMEM; + if (force) { + p->impl = __UNCONST(&_CATEGORY_DEFAULT); + } else { + _DIAGASSERT(_PathLocale != NULL); + ret = _PREFIX(create_impl)((const char *)_PathLocale, + name, &p->impl); + if (ret) { + free(p); + return ret; + } + } + strlcpy(&p->name[0], name, sizeof(p->name)); + SIMPLEQ_INSERT_TAIL(&_nb_part_cache, p, entry); + } +found: + if (real != NULL) { + q = malloc(sizeof(*q)); + if (q == NULL) + return ENOMEM; + strlcpy(&q->name[0], real, sizeof(p->name)); + q->impl = p->impl; + SIMPLEQ_INSERT_TAIL(&_nb_part_cache, q, entry); + p = q; + } + *part = p; + return 0; +} + +static __inline int +_PREFIX(load)(const char * __restrict name, + _nb_part_t ** __restrict part) +{ + int ret, force; + char path[PATH_MAX + 1], loccat[PATH_MAX + 1], buf[PATH_MAX + 1]; + const char *aliaspath, *alias; + +#define _LOAD_SUB_ALIAS(key) \ +do { \ + alias = __unaliasname(aliaspath, key, &buf[0], sizeof(buf)); \ + if (alias != NULL) { \ + ret = (force = !__isforcemapping(alias)) \ + ? _PREFIX(load_sub)(name, NULL, part, force) \ + : _PREFIX(load_sub)(alias, name, part, force); \ + _DIAGASSERT(!ret || !force); \ + goto done; \ + } \ +} while (/*CONSTCOND*/0) + + /* (1) non-aliased file */ + mutex_lock(&_nb_mutex); + ret = _PREFIX(load_sub)(name, NULL, part, 0); + if (ret != ENOENT) + goto done; + + /* (2) lookup locname/catname type alias */ + _DIAGASSERT(_PathLocale != NULL); + snprintf(&path[0], sizeof(path), + "%s/" _LOCALE_ALIAS_NAME, _PathLocale); + aliaspath = (const char *)&path[0]; + snprintf(&loccat[0], sizeof(loccat), + "%s/" _CATEGORY_NAME, name); + _LOAD_SUB_ALIAS((const char *)&loccat[0]); + + /* (3) lookup locname type alias */ + _LOAD_SUB_ALIAS(name); + +done: + mutex_unlock(&_nb_mutex); + return ret; +} + +static const char * +_PREFIX(setlocale)(const char * __restrict name, + struct _locale_impl_t * __restrict locale) +{ + _nb_part_t *part; + + /* name may be NULL */ + _DIAGASSERT(locale != NULL); + + if (name != NULL) { + if (*name == '\0') + name = _get_locale_env(_CATEGORY_NAME); + _DIAGASSERT(name != NULL); + _DIAGASSERT(locale->part_name[(size_t)_CATEGORY_ID] != NULL); + if (strcmp(name, locale->part_name[(size_t)_CATEGORY_ID])) { + if (_PREFIX(load)(name, &part)) + return NULL; + locale->part_name[(size_t)_CATEGORY_ID] + = &part->name[0]; + locale->part_impl[(size_t)_CATEGORY_ID] + = part->impl; + _PREFIX(build_cache)(&locale->cache, part->impl); + if (locale == &_global_locale) + _PREFIX(fixup)(part->impl); + } + } + return locale->part_name[(size_t)_CATEGORY_ID]; +} + +#include "generic_lc_template.h" + +#endif /*_NB_LC_TEMPLATE_H_*/ Index: lib/libc/locale/nb_lc_template_decl.h =================================================================== RCS file: lib/libc/locale/nb_lc_template_decl.h diff -N lib/libc/locale/nb_lc_template_decl.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/nb_lc_template_decl.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,45 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _NB_LC_TEMPLATE_DECL_H_ +#define _NB_LC_TEMPLATE_DECL_H_ + +#include "generic_lc_template_decl.h" + +static __inline int +_PREFIX(create_impl)(const char * __restrict, + const char * __restrict, _CATEGORY_TYPE ** __restrict); + +static __inline void +_PREFIX(build_cache)(struct _locale_cache_t * __restrict, + _CATEGORY_TYPE * __restrict); + +static __inline void +_PREFIX(fixup)(_CATEGORY_TYPE *); + +#endif /*_NB_LC_TEMPLATE_DECL_H_*/ Index: lib/libc/locale/nb_lc_time_misc.h =================================================================== RCS file: lib/libc/locale/nb_lc_time_misc.h diff -N lib/libc/locale/nb_lc_time_misc.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/nb_lc_time_misc.h 14 Dec 2008 18:55:47 -0000 @@ -0,0 +1,91 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _NB_LC_TIME_MISC_H_ +#define _NB_LC_TIME_MISC_H_ + +/* + * macro required by nb_lc_template(_decl).h + */ +#define _CATEGORY_TYPE _TimeLocale + +#define ABDAY_IDX(idx) ((size_t)idx - (size_t)ABDAY_1) +#define DAY_IDX(idx) ((size_t)idx - (size_t)DAY_1) +#define ABMON_IDX(idx) ((size_t)idx - (size_t)ABMON_1) +#define MON_IDX(idx) ((size_t)idx - (size_t)MON_1) +#define AM_PM_IDX(idx) ((size_t)idx - (size_t)AM_STR) + +static __inline void +/*ARGSUSED*/ +_PREFIX(build_cache)(struct _locale_cache_t * __restrict cache, + _TimeLocale * __restrict data) +{ + size_t i; + + _DIAGASSERT(cache != NULL); + _DIAGASSERT(data != NULL); + + for (i = (size_t)ABDAY_1; i <= ABDAY_7; ++i) + cache->items[i] = data->abday[ABDAY_IDX(i)]; + for (i = (size_t)DAY_1; i <= DAY_7; ++i) + cache->items[i] = data->day[DAY_IDX(i)]; + for (i = (size_t)ABMON_1; i <= ABMON_12; ++i) + cache->items[i] = data->abmon[ABMON_IDX(i)]; + for (i = (size_t)MON_1; i <= MON_12; ++i) + cache->items[i] = data->mon[MON_IDX(i)]; + for (i = (size_t)AM_STR; i <= PM_STR; ++i) + cache->items[i] = data->am_pm[AM_PM_IDX(i)]; + cache->items[(size_t)D_T_FMT ] = data->d_t_fmt; + cache->items[(size_t)D_FMT ] = data->d_fmt; + cache->items[(size_t)T_FMT ] = data->t_fmt; + cache->items[(size_t)T_FMT_AMPM ] = data->t_fmt_ampm; + + /* NOT IMPLEMENTED YET */ + cache->items[(size_t)ERA ] = NULL; + cache->items[(size_t)ERA_D_FMT ] = NULL; + cache->items[(size_t)ERA_D_T_FMT] = NULL; + cache->items[(size_t)ERA_T_FMT ] = NULL; + cache->items[(size_t)ALT_DIGITS ] = NULL; +} + +static __inline void +_PREFIX(fixup)(_TimeLocale *data) +{ + _DIAGASSERT(data != NULL); + + _CurrentTimeLocale = data; +} + +/* + * macro required by nb_lc_template.h + */ +#define _CATEGORY_ID LC_TIME +#define _CATEGORY_NAME "LC_TIME" +#define _CATEGORY_DEFAULT _DefaultTimeLocale + +#endif /*_NB_LC_TIME_MISC_H_*/ Index: lib/libc/locale/nl_langinfo.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/nl_langinfo.c,v retrieving revision 1.11 diff -u -r1.11 nl_langinfo.c --- lib/libc/locale/nl_langinfo.c 29 Nov 2005 03:11:59 -0000 1.11 +++ lib/libc/locale/nl_langinfo.c 14 Dec 2008 18:55:47 -0000 @@ -1,126 +1,56 @@ -/* $NetBSD: nl_langinfo.c,v 1.11 2005/11/29 03:11:59 christos Exp $ */ +/* $NetBSD$ */ -/* - * Written by J.T. Conklin . - * Public domain. +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. */ #include #if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: nl_langinfo.c,v 1.11 2005/11/29 03:11:59 christos Exp $"); +__RCSID("$NetBSD$"); #endif /* LIBC_SCCS and not lint */ -#include -#include -#include +#include #include -#include "rune.h" -#include "runetype.h" +#define __SETLOCALE_SOURCE__ +#include +#include + +#include "setlocale_local.h" char * -nl_langinfo(item) - nl_item item; +nl_langinfo(nl_item item) { const char *s; + struct _locale_impl_t *impl; - switch (item) { - case D_T_FMT: - s = _CurrentTimeLocale->d_t_fmt; - break; - case D_FMT: - s = _CurrentTimeLocale->d_fmt; - break; - case T_FMT: - s = _CurrentTimeLocale->t_fmt; - break; - case T_FMT_AMPM: - s = _CurrentTimeLocale->t_fmt_ampm; - break; - case AM_STR: - case PM_STR: - s = _CurrentTimeLocale->am_pm[(size_t)(item - AM_STR)]; - break; - case DAY_1: - case DAY_2: - case DAY_3: - case DAY_4: - case DAY_5: - case DAY_6: - case DAY_7: - s = _CurrentTimeLocale->day[(size_t)(item - DAY_1)]; - break; - case ABDAY_1: - case ABDAY_2: - case ABDAY_3: - case ABDAY_4: - case ABDAY_5: - case ABDAY_6: - case ABDAY_7: - s = _CurrentTimeLocale->abday[(size_t)(item - ABDAY_1)]; - break; - case MON_1: - case MON_2: - case MON_3: - case MON_4: - case MON_5: - case MON_6: - case MON_7: - case MON_8: - case MON_9: - case MON_10: - case MON_11: - case MON_12: - s = _CurrentTimeLocale->mon[(size_t)(item - MON_1)]; - break; - case ABMON_1: - case ABMON_2: - case ABMON_3: - case ABMON_4: - case ABMON_5: - case ABMON_6: - case ABMON_7: - case ABMON_8: - case ABMON_9: - case ABMON_10: - case ABMON_11: - case ABMON_12: - s = _CurrentTimeLocale->abmon[(size_t)(item - ABMON_1)]; - break; - case RADIXCHAR: - s = _CurrentNumericLocale->decimal_point; - break; - case THOUSEP: - s = _CurrentNumericLocale->thousands_sep; - break; - case YESSTR: - s = _CurrentMessagesLocale->yesstr; - break; - case YESEXPR: - s = _CurrentMessagesLocale->yesexpr; - break; - case NOSTR: - s = _CurrentMessagesLocale->nostr; - break; - case NOEXPR: - s = _CurrentMessagesLocale->noexpr; - break; - case CRNCYSTR: /* XXX */ - s = ""; - break; - case CODESET: -#ifdef WITH_RUNE - s = _CurrentRuneLocale->rl_codeset; -#else s = NULL; -#endif - if (!s) - s = ""; - break; - default: - s = ""; - break; + if (item >= D_T_FMT && item <= ALT_DIGITS) { + impl = *_current_locale(); + s = impl->cache.items[(size_t)item]; } - - /* The return value should be really const, but the interface says OW */ + if (s == NULL) + s = ""; return __UNCONST(s); } Index: lib/libc/locale/rune.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/rune.c,v retrieving revision 1.30 diff -u -r1.30 rune.c --- lib/libc/locale/rune.c 29 Sep 2007 07:55:45 -0000 1.30 +++ lib/libc/locale/rune.c 14 Dec 2008 18:55:47 -0000 @@ -76,8 +76,11 @@ #include #include #include -#include -#include + +#include "citrus_module.h" +#include "citrus_ctype.h" + +#include "bsdctype.h" #include "rune.h" #include "rune_local.h" Index: lib/libc/locale/rune.h =================================================================== RCS file: /cvsroot/src/lib/libc/locale/rune.h,v retrieving revision 1.12 diff -u -r1.12 rune.h --- lib/libc/locale/rune.h 3 Sep 2007 20:31:56 -0000 1.12 +++ lib/libc/locale/rune.h 14 Dec 2008 18:55:48 -0000 @@ -89,10 +89,7 @@ extern size_t __mb_len_max_runtime; #define __MB_LEN_MAX_RUNTIME __mb_len_max_runtime -extern _RuneLocale _DefaultRuneLocale; -extern _RuneLocale *_CurrentRuneLocale; -extern const char *_PathLocale; - -#define _LOCALE_ALIAS_NAME "locale.alias" +extern const _RuneLocale _DefaultRuneLocale; +extern const _RuneLocale *_CurrentRuneLocale; #endif /*! _RUNE_H_ */ Index: lib/libc/locale/rune_local.h =================================================================== RCS file: /cvsroot/src/lib/libc/locale/rune_local.h,v retrieving revision 1.10 diff -u -r1.10 rune_local.h --- lib/libc/locale/rune_local.h 1 Apr 2008 19:19:33 -0000 1.10 +++ lib/libc/locale/rune_local.h 14 Dec 2008 18:55:48 -0000 @@ -30,19 +30,11 @@ #define _RUNE_LOCAL_H_ /* rune.c */ -extern _RuneLocale *_Read_RuneMagi __P((FILE *fp)); -extern _RuneLocale *_Read_CTypeAsRune __P((FILE *fp)); -extern void _NukeRune __P((_RuneLocale *)); - -/* setrunelocale.c */ -extern int _xpg4_setrunelocale __P((const char *)); -extern _RuneLocale *_findrunelocale __P((char *)); -extern int _newrunelocale __P((char *)); +extern _RuneLocale *_Read_RuneMagi(FILE *fp); +extern _RuneLocale *_Read_CTypeAsRune(FILE *fp); +extern void _NukeRune(_RuneLocale *); /* runeglue.c */ -extern int __runetable_to_netbsd_ctype __P((_RuneLocale *)); - -/* ___runetype_mb.c */ -extern _RuneType ___runetype_mb __P((wint_t)); +extern int __runetable_to_netbsd_ctype(_RuneLocale *); #endif Index: lib/libc/locale/runeglue.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/runeglue.c,v retrieving revision 1.13 diff -u -r1.13 runeglue.c --- lib/libc/locale/runeglue.c 6 Nov 2008 19:59:42 -0000 1.13 +++ lib/libc/locale/runeglue.c 14 Dec 2008 18:55:48 -0000 @@ -47,8 +47,8 @@ #include #include #include -#include "citrus/citrus_module.h" -#include "citrus/citrus_ctype.h" +#include "citrus_module.h" +#include "citrus_ctype.h" #include "rune.h" #include "rune_local.h" Index: lib/libc/locale/runetable.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/runetable.c,v retrieving revision 1.17 diff -u -r1.17 runetable.c --- lib/libc/locale/runetable.c 12 Aug 2008 21:25:31 -0000 1.17 +++ lib/libc/locale/runetable.c 14 Dec 2008 18:55:48 -0000 @@ -49,12 +49,12 @@ #include #include #include -#include -#include +#include "citrus_module.h" +#include "citrus_ctype.h" #include "rune.h" #include "rune_local.h" -_RuneLocale _DefaultRuneLocale = { +const _RuneLocale _DefaultRuneLocale = { _RUNE_MAGIC_1, "NONE", _DEFAULT_INVALID_RUNE, @@ -349,6 +349,4 @@ _C_toupper_ }; -_RuneLocale *_CurrentRuneLocale = &_DefaultRuneLocale; - -const char *_PathLocale; +const _RuneLocale *_CurrentRuneLocale = &_DefaultRuneLocale; Index: lib/libc/locale/setlocale.c =================================================================== RCS file: /cvsroot/src/lib/libc/locale/setlocale.c,v retrieving revision 1.54 diff -u -r1.54 setlocale.c --- lib/libc/locale/setlocale.c 12 Jun 2008 20:33:23 -0000 1.54 +++ lib/libc/locale/setlocale.c 14 Dec 2008 18:55:48 -0000 @@ -1,11 +1,8 @@ -/* $NetBSD: setlocale.c,v 1.54 2008/06/12 20:33:23 ginsbach Exp $ */ +/* $NetBSD$ */ -/* - * Copyright (c) 1991, 1993, 2008 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Paul Borman at Krystal Technologies. +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -15,14 +12,11 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) @@ -34,427 +28,84 @@ #include #if defined(LIBC_SCCS) && !defined(lint) -#if 0 -static char sccsid[] = "@(#)setlocale.c 8.1 (Berkeley) 7/4/93"; -#else -__RCSID("$NetBSD: setlocale.c,v 1.54 2008/06/12 20:33:23 ginsbach Exp $"); -#endif +__RCSID("$NetBSD$"); #endif /* LIBC_SCCS and not lint */ -#define _CTYPE_PRIVATE - -#include "namespace.h" -#include +#include #include -#include -#include -#include -#include +#include #define __SETLOCALE_SOURCE__ #include #include -#include #include #include #include -#ifdef WITH_RUNE -#include "rune.h" -#include "rune_local.h" -#else -#include "ctypeio.h" -#endif -#include "lcmessages.h" -#include "lcmonetary.h" -#include "lcnumeric.h" -#include "lctime.h" - -#ifdef CITRUS -#include -#include -#include -#include -#else -#include -#define _lookup_alias(p, a, b, s, c) __unaliasname((p), (a), (b), (s)) -#define _bcs_strcasecmp(a, b) strcasecmp((a), (b)) -#endif -#define _LOCALE_SYM_FORCE "/force" - -/* - * Category names for getenv() - */ -static const char *const categories[_LC_LAST] = { - "LC_ALL", - "LC_COLLATE", - "LC_CTYPE", - "LC_MONETARY", - "LC_NUMERIC", - "LC_TIME", - "LC_MESSAGES" -}; +#include "setlocale_local.h" -/* - * Current locales for each category - */ -static char current_categories[_LC_LAST][32] = { - "C", - "C", - "C", - "C", - "C", - "C", - "C" -}; +const char *_PathLocale = NULL; -/* - * The locales we are going to try and load - */ -static char new_categories[_LC_LAST][32]; +__link_set_decl(all_categories, _locale_category_t); -static char current_locale_string[_LC_LAST * 33]; +#ifndef __lint__ +static +#endif +const _locale_category_t dummy = { + .category = _LC_LAST, /* XXX */ + .setlocale = NULL, +}; -static char *currentlocale __P((void)); -static void revert_to_default __P((int)); -static int force_locale_enable __P((int)); -static int load_locale_sub __P((int, const char *, int)); -static char *loadlocale __P((int)); -static const char *__get_locale_env __P((int)); +__link_set_add_data(all_categories, dummy); -char * -__setlocale(category, locale) - int category; - const char *locale; +_locale_category_t * +_find_category(int category) { - int i, loadlocale_success; - size_t len; - const char *env, *r; - - if (issetugid() || - ((!_PathLocale && !(_PathLocale = getenv("PATH_LOCALE"))) || - !*_PathLocale)) - _PathLocale = _PATH_LOCALE; - - if (category < 0 || category >= _LC_LAST) - return (NULL); - - if (!locale) - return (category ? - current_categories[category] : currentlocale()); - - /* - * Default to the current locale for everything. - */ - for (i = 1; i < _LC_LAST; ++i) - (void)strlcpy(new_categories[i], current_categories[i], - sizeof(new_categories[i])); - - /* - * Now go fill up new_categories from the locale argument - */ - if (!*locale) { - if (category == LC_ALL) { - for (i = 1; i < _LC_LAST; ++i) { - env = __get_locale_env(i); - (void)strlcpy(new_categories[i], env, - sizeof(new_categories[i])); - } - } - else { - env = __get_locale_env(category); - (void)strlcpy(new_categories[category], env, - sizeof(new_categories[category])); - } - } else if (category) { - (void)strlcpy(new_categories[category], locale, - sizeof(new_categories[category])); - } else { - if ((r = strchr(locale, '/')) == 0) { - for (i = 1; i < _LC_LAST; ++i) { - (void)strlcpy(new_categories[i], locale, - sizeof(new_categories[i])); - } - } else { - for (i = 1;;) { - _DIAGASSERT(*r == '/' || *r == 0); - _DIAGASSERT(*locale != 0); - if (*locale == '/') - return (NULL); /* invalid format. */ - len = r - locale; - if (len + 1 > sizeof(new_categories[i])) - return (NULL); /* too long */ - (void)memcpy(new_categories[i], locale, len); - new_categories[i][len] = '\0'; - if (*r == 0) - break; - _DIAGASSERT(*r == '/'); - if (*(locale = ++r) == 0) - /* slash followed by NUL */ - return (NULL); - /* skip until NUL or '/' */ - while (*r && *r != '/') - r++; - if (++i == _LC_LAST) - return (NULL); /* too many slashes. */ - } - if (i + 1 != _LC_LAST) - return (NULL); /* too few slashes. */ - } - } - - if (category) - return (loadlocale(category)); + _locale_category_t * const *p; - loadlocale_success = 0; - for (i = 1; i < _LC_LAST; ++i) { - if (loadlocale(i) != NULL) - loadlocale_success = 1; + __link_set_foreach(p, all_categories) { + if ((*p)->category == category) + return *p; } - - /* - * If all categories failed, return NULL; we don't need to back - * changes off, since none happened. - */ - if (!loadlocale_success) - return NULL; - - return (currentlocale()); + return NULL; } -static char * -currentlocale() +const char * +_get_locale_env(const char *category) { - int i; - - (void)strlcpy(current_locale_string, current_categories[1], - sizeof(current_locale_string)); + const char *name; - for (i = 2; i < _LC_LAST; ++i) - if (strcmp(current_categories[1], current_categories[i])) { - (void)snprintf(current_locale_string, - sizeof(current_locale_string), "%s/%s/%s/%s/%s/%s", - current_categories[1], current_categories[2], - current_categories[3], current_categories[4], - current_categories[5], current_categories[6]); - break; - } - return (current_locale_string); -} - -static void -revert_to_default(category) - int category; -{ - switch (category) { - case LC_CTYPE: -#ifdef WITH_RUNE - (void)_xpg4_setrunelocale("C"); -#else - if (_ctype_ != _C_ctype_) { - /* LINTED const castaway */ - free((void *)_ctype_); - _ctype_ = _C_ctype_; - } - if (_toupper_tab_ != _C_toupper_) { - /* LINTED const castaway */ - free((void *)_toupper_tab_); - _toupper_tab_ = _C_toupper_; - } - if (_tolower_tab_ != _C_tolower_) { - /* LINTED const castaway */ - free((void *)_tolower_tab_); - _tolower_tab_ = _C_tolower_; - } -#endif - break; - case LC_TIME: - if (_CurrentTimeLocale != &_DefaultTimeLocale) { - free(__UNCONST(_CurrentTimeLocale)); - _CurrentTimeLocale = &_DefaultTimeLocale; + /* 1. check LC_ALL */ + name = (const char *)getenv("LC_ALL"); + if (name == NULL || *name == '\0') { + /* 2. check LC_* */ + name = (const char *)getenv(category); + if (name == NULL || *name == '\0') { + /* 3. check LANG */ + name = getenv("LANG"); } - break; - case LC_MESSAGES: - if (_CurrentMessagesLocale != &_DefaultMessagesLocale) { - free(__UNCONST(_CurrentMessagesLocale)); - _CurrentMessagesLocale = &_DefaultMessagesLocale; - } - break; - case LC_COLLATE: - break; - case LC_MONETARY: - if (_CurrentMonetaryLocale != &_DefaultMonetaryLocale) { - free(__UNCONST(_CurrentMonetaryLocale)); - _CurrentMonetaryLocale = &_DefaultMonetaryLocale; - } - break; - case LC_NUMERIC: - if (_CurrentNumericLocale != &_DefaultNumericLocale) { - free(__UNCONST(_CurrentNumericLocale)); - _CurrentNumericLocale = &_DefaultNumericLocale; - } - break; } + if (name == NULL || *name == '\0' || strchr(name, '/')) + /* 4. if none is set, fall to "C" */ + name = _C_LOCALE; + return name; } -static int -force_locale_enable(category) - int category; -{ - revert_to_default(category); - - return 0; -} - -static int -load_locale_sub(category, locname, isspecial) - int category; - const char *locname; - int isspecial; +char * +__setlocale(int category, const char *name) { - char name[PATH_MAX]; - int len; + _locale_category_t *l; + struct _locale_impl_t *impl; - /* check for the default locales */ - if (!strcmp(new_categories[category], "C") || - !strcmp(new_categories[category], "POSIX")) { - revert_to_default(category); - return 0; - } - - /* check whether special symbol */ - if (isspecial && _bcs_strcasecmp(locname, _LOCALE_SYM_FORCE) == 0) - return force_locale_enable(category); - - /* sanity check */ - if (strchr(locname, '/') != NULL) - return -1; - - len = snprintf(name, sizeof(name), "%s/%s/%s", - _PathLocale, locname, categories[category]); - if (len < 0 || len >= sizeof(name)) - return -1; - - switch (category) { - case LC_CTYPE: -#ifdef WITH_RUNE - if (_xpg4_setrunelocale(__UNCONST(locname))) - return -1; -#else - if (!__loadctype(name)) - return -1; -#endif - break; - - case LC_MESSAGES: - len += snprintf(name + len, sizeof(name) - len, "/%s", - categories[category]); - if (len >= sizeof(name)) - return -1; - if (!__loadmessages(name)) -#ifdef notyet - return -1; -#else - /* - * XXX we don't have LC_MESSAGES support yet, - * but catopen may use the value of LC_MESSAGES category. - * so return successfully if locale directory is present. - */ - /* local */ - { - struct stat st; - - (void)snprintf(name, sizeof(name), "%s/%s", - _PathLocale, locname); - if (stat(name, &st) < 0) - return -1; - if (!S_ISDIR(st.st_mode)) - return -1; + if (category >= LC_ALL && category < _LC_LAST) { + l = _find_category(category); + if (l != NULL) { + if (issetugid() || ((_PathLocale == NULL && + (_PathLocale = getenv("PATH_LOCALE")) == NULL) || + *_PathLocale == '\0')) + _PathLocale = _PATH_LOCALE; + impl = *_current_locale(); + return __UNCONST((*l->setlocale)(name, impl)); } -#endif - break; - - case LC_TIME: - if (!__loadtime(name)) - return -1; - break; - case LC_COLLATE: - return -1; - case LC_MONETARY: - if (!__loadmonetary(name)) - return -1; - break; - case LC_NUMERIC: - if (!__loadnumeric(name)) - return -1; - break; } - - return 0; -} - -static char * -loadlocale(category) - int category; -{ - char aliaspath[PATH_MAX], loccat[PATH_MAX], buf[PATH_MAX]; - const char *alias; - - _DIAGASSERT(0 < category && category < _LC_LAST); - - if (strcmp(new_categories[category], current_categories[category]) == 0) - return (current_categories[category]); - - /* (1) non-aliased file */ - if (!load_locale_sub(category, new_categories[category], 0)) - goto success; - - /* (2) lookup locname/catname type alias */ - (void)snprintf(aliaspath, sizeof(aliaspath), - "%s/" _LOCALE_ALIAS_NAME, _PathLocale); - (void)snprintf(loccat, sizeof(loccat), "%s/%s", - new_categories[category], categories[category]); - alias = _lookup_alias(aliaspath, loccat, buf, sizeof(buf), - _LOOKUP_CASE_SENSITIVE); - if (!load_locale_sub(category, alias, 1)) - goto success; - - /* (3) lookup locname type alias */ - alias = _lookup_alias(aliaspath, new_categories[category], - buf, sizeof(buf), _LOOKUP_CASE_SENSITIVE); - if (!load_locale_sub(category, alias, 1)) - goto success; - return NULL; - -success: - (void)strlcpy(current_categories[category], - new_categories[category], - sizeof(current_categories[category])); - return current_categories[category]; -} - -static const char * -__get_locale_env(category) - int category; -{ - const char *env; - - _DIAGASSERT(category != LC_ALL); - - /* 1. check LC_ALL. */ - env = getenv(categories[0]); - - /* 2. check LC_* */ - if (!env || !*env) - env = getenv(categories[category]); - - /* 3. check LANG */ - if (!env || !*env) - env = getenv("LANG"); - - /* 4. if none is set, fall to "C" */ - if (!env || !*env || strchr(env, '/')) - env = "C"; - - return env; } Index: lib/libc/locale/setlocale_local.h =================================================================== RCS file: lib/libc/locale/setlocale_local.h diff -N lib/libc/locale/setlocale_local.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lib/libc/locale/setlocale_local.h 14 Dec 2008 18:55:48 -0000 @@ -0,0 +1,74 @@ +/* $NetBSD$ */ + +/*- + * Copyright (c)2008 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _SETLOCALE_LOCAL_H_ +#define _SETLOCALE_LOCAL_H_ + +#define _LOCALENAME_LEN_MAX 33 + +#define _C_LOCALE "C" +#define _POSIX_LOCALE "POSIX" + +extern const char *_PathLocale; +#define _LOCALE_ALIAS_NAME "locale.alias" + +typedef void *_locale_part_t; + +struct _locale_cache_t { + const unsigned char *ctype_tab; + const short *tolower_tab; + const short *toupper_tab; + size_t mb_cur_max; + struct lconv ldata; + const char *items[ALT_DIGITS + 1]; +}; + +struct _locale_impl_t { + struct _locale_cache_t cache; + char query[_LOCALENAME_LEN_MAX * (_LC_LAST - 1)]; + const char *part_name[_LC_LAST]; + _locale_part_t part_impl[_LC_LAST]; +}; + +typedef const char *(*_locale_set_t)(const char * __restrict, + struct _locale_impl_t * __restrict); + +typedef struct { + const char* name; + int category; + _locale_set_t setlocale; +} _locale_category_t; + +__BEGIN_DECLS +_locale_category_t *_find_category(int); +const char *_get_locale_env(const char *); +struct _locale_impl_t _global_locale; +struct _locale_impl_t **_current_locale(void); +__END_DECLS + +#endif /*_SETLOCALE_LOCAL_H_*/ Index: lib/libc/locale/setrunelocale.c =================================================================== RCS file: lib/libc/locale/setrunelocale.c diff -N lib/libc/locale/setrunelocale.c --- lib/libc/locale/setrunelocale.c 28 Apr 2008 20:23:00 -0000 1.18 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,266 +0,0 @@ -/* $NetBSD: setrunelocale.c,v 1.18 2008/04/28 20:23:00 martin Exp $ */ - -/*- - * Copyright (c)1999 Citrus Project, - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -/*- - * Copyright (c) 1998 The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by Paul Kranenburg. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -/*- - * Copyright (c) 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Paul Borman at Krystal Technologies. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include -#if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: setrunelocale.c,v 1.18 2008/04/28 20:23:00 martin Exp $"); -#endif /* LIBC_SCCS and not lint */ - -#include "namespace.h" - -#include "rune.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "rune_local.h" -#include "multibyte.h" - -struct localetable { - char path[PATH_MAX]; - _RuneLocale *runelocale; - struct localetable *next; -}; -static struct localetable *localetable_head; - -_RuneLocale * -_findrunelocale(path) - char *path; -{ - struct localetable *lt; - - _DIAGASSERT(path != NULL); - - /* ones which we have seen already */ - for (lt = localetable_head; lt; lt = lt->next) - if (strcmp(path, lt->path) == 0) - return lt->runelocale; - - return NULL; -} - -int -_newrunelocale(path) - char *path; -{ - struct localetable *lt; - FILE *fp; - _RuneLocale *rl; - int ret; - - _DIAGASSERT(path != NULL); - - if (strlen(path) + 1 > sizeof(lt->path)) - return EINVAL; - - rl = _findrunelocale(path); - if (rl) - return 0; - - if ((fp = fopen(path, "r")) == NULL) - return ENOENT; - - if ((rl = _Read_RuneMagi(fp)) != NULL) - goto found; - /* necessary for backward compatibility */ - if ((rl = _Read_CTypeAsRune(fp)) != NULL) - goto found; - - fclose(fp); - return EFTYPE; - -found: - fclose(fp); - - rl->rl_citrus_ctype = NULL; - ret = _citrus_ctype_open(&rl->rl_citrus_ctype, rl->rl_encoding, - rl->rl_variable, rl->rl_variable_len, - _PRIVSIZE); - if (!ret) - ret = __runetable_to_netbsd_ctype(rl); - if (ret) { - _NukeRune(rl); - return ret; - } - if (__MB_LEN_MAX_RUNTIME < - _citrus_ctype_get_mb_cur_max(rl->rl_citrus_ctype)) { - _NukeRune(rl); - return EINVAL; - } - - /* register it */ - lt = malloc(sizeof(struct localetable)); - if (lt == NULL) { - _NukeRune(rl); - return ENOMEM; - } - strlcpy(lt->path, path, sizeof(lt->path)); - lt->runelocale = rl; - lt->next = localetable_head; - localetable_head = lt; - - return 0; -} - -#if 0 -static int -delrunelocale(path) - char *path; -{ - struct localetable *lt, *prev; - _RuneLocale *rl; - - _DIAGASSERT(path != NULL); - - prev = NULL; - for (lt = localetable_head; lt; prev = lt, lt = prev->next) - if (strcmp(path, lt->path) == 0) - break; - if (!lt) - return ENOENT; - - /* remove runelocale registeration */ - if (prev) - prev->next = lt->next; - else - localetable_head = lt->next; - lt->next = NULL; - free(lt); - - /* cleanup everything */ - rl = lt->runelocale; - dlclose(rl->rl_rune_RuneModule); - rl->rl_rune_RuneModule = NULL; - _NukeRune(rl); - - return 0; -} -#endif - -int -_xpg4_setrunelocale(encoding) - const char *encoding; -{ - char path[PATH_MAX]; - _RuneLocale *rl; - int error; - - _DIAGASSERT(encoding != NULL); - - if (!strcmp(encoding, "C") || !strcmp(encoding, "POSIX")) { - rl = &_DefaultRuneLocale; - goto found; - } - - snprintf(path, sizeof(path), "%s/%s/LC_CTYPE", _PathLocale, encoding); - - error = _newrunelocale(path); - if (error) - return error; - rl = _findrunelocale(path); - if (!rl) - return ENOENT; - -found: - _ctype_ = rl->rl_ctype_tab; - _tolower_tab_ = rl->rl_tolower_tab; - _toupper_tab_ = rl->rl_toupper_tab; - _CurrentRuneLocale = rl; - __mb_cur_max = _citrus_ctype_get_mb_cur_max(rl->rl_citrus_ctype); - - return 0; -} Index: lib/libc/nls/Makefile.inc =================================================================== RCS file: /cvsroot/src/lib/libc/nls/Makefile.inc,v retrieving revision 1.8 diff -u -r1.8 Makefile.inc --- lib/libc/nls/Makefile.inc 13 May 1996 23:29:32 -0000 1.8 +++ lib/libc/nls/Makefile.inc 14 Dec 2008 18:55:48 -0000 @@ -7,3 +7,10 @@ # indirect reference stubs, to be removed soon. SRCS+= _catclose.c _catgets.c _catopen.c + +.if ${CITRUS} == "yes" +CPPFLAGS.catopen.c+= -DHAVE_CITRUS -I${LIBCDIR}/citrus +.else +CPPFLAGS.catopen.c+= -UHAVE_CITRUS -I${LIBCDIR}/locale +.endif + Index: lib/libc/nls/catopen.c =================================================================== RCS file: /cvsroot/src/lib/libc/nls/catopen.c,v retrieving revision 1.25 diff -u -r1.25 catopen.c --- lib/libc/nls/catopen.c 28 Apr 2008 20:23:00 -0000 1.25 +++ lib/libc/nls/catopen.c 14 Dec 2008 18:55:48 -0000 @@ -50,13 +50,14 @@ #include #include -#ifdef CITRUS -#include -#include -#include +#ifdef HAVE_CITRUS +#include "citrus_namespace.h" +#include "citrus_bcs.h" +#include "citrus_region.h" +#include "citrus_lookup.h" +#include "citrus_aliasname_local.h" #else -#include -#define _lookup_alias(p, a, b, s, c) __unaliasname((p), (a), (b), (s)) +#include "aliasname_local.h" #endif #define NLS_ALIAS_DB "/usr/share/nls/nls.alias" @@ -77,7 +78,7 @@ { char tmppath[PATH_MAX+1]; const char *nlspath; - const char *lang; + const char *lang, *reallang; char *t; const char *s, *u; nl_catd catd; @@ -101,8 +102,9 @@ if (lang == NULL || strchr(lang, '/')) lang = NLS_DEFAULT_LANG; - lang = _lookup_alias(NLS_ALIAS_DB, lang, langbuf, sizeof(langbuf), - _LOOKUP_CASE_SENSITIVE); + reallang = __unaliasname(NLS_ALIAS_DB, lang, langbuf, sizeof(langbuf)); + if (reallang == NULL) + reallang = lang; s = nlspath; t = tmppath; @@ -111,7 +113,7 @@ if (*s == '%') { switch (*(++s)) { case 'L': /* locale */ - u = lang; + u = reallang; while (*u && t < tmppath + PATH_MAX) *t++ = *u++; break; Index: lib/libc/string/Makefile.inc =================================================================== RCS file: /cvsroot/src/lib/libc/string/Makefile.inc,v retrieving revision 1.67 diff -u -r1.67 Makefile.inc --- lib/libc/string/Makefile.inc 17 Feb 2007 09:32:58 -0000 1.67 +++ lib/libc/string/Makefile.inc 14 Dec 2008 18:55:48 -0000 @@ -13,8 +13,10 @@ SRCS+= wcscat.c wcschr.c wcscmp.c wcscpy.c wcscspn.c wcslcat.c wcslcpy.c \ wcslen.c wcsncat.c wcscasecmp.c wcsdup.c wcsncasecmp.c \ wcsncmp.c wcsncpy.c wcspbrk.c wcsrchr.c wcsspn.c wcsstr.c wcstok.c \ - wcswcs.c wcswidth.c \ - wmemchr.c wmemcmp.c wmemcpy.c wmemmove.c wmemset.c + wcswcs.c wmemchr.c wmemcmp.c wmemcpy.c wmemmove.c wmemset.c +CPPFLAGS.wcscmp.c+= -I${LIBCDIR}/locale +CPPFLAGS.wcsncmp.c+= -I${LIBCDIR}/locale +CPPFLAGS.wmemcmp.c+= -I${LIBCDIR}/locale # namespace protection wrappers SRCS+= _strlcat.c _strlcpy.c _strerror_r.c Index: lib/libc/string/wcscmp.c =================================================================== RCS file: /cvsroot/src/lib/libc/string/wcscmp.c,v retrieving revision 1.5 diff -u -r1.5 wcscmp.c --- lib/libc/string/wcscmp.c 7 Aug 2003 16:43:54 -0000 1.5 +++ lib/libc/string/wcscmp.c 14 Dec 2008 18:55:48 -0000 @@ -43,7 +43,7 @@ #include #include -#include "locale/runetype.h" +#include "runetype.h" /* * Compare strings. Index: lib/libc/string/wcsncmp.c =================================================================== RCS file: /cvsroot/src/lib/libc/string/wcsncmp.c,v retrieving revision 1.5 diff -u -r1.5 wcsncmp.c --- lib/libc/string/wcsncmp.c 7 Aug 2003 16:43:54 -0000 1.5 +++ lib/libc/string/wcsncmp.c 14 Dec 2008 18:55:48 -0000 @@ -40,7 +40,7 @@ #include #include -#include "locale/runetype.h" +#include "runetype.h" int wcsncmp(s1, s2, n) Index: lib/libc/string/wcswidth.c =================================================================== RCS file: lib/libc/string/wcswidth.c diff -N lib/libc/string/wcswidth.c --- lib/libc/string/wcswidth.c 12 Aug 2008 21:59:27 -0000 1.5 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,60 +0,0 @@ -/* $NetBSD: wcswidth.c,v 1.5 2008/08/12 21:59:27 tnozaki Exp $ */ - -/*- - * Copyright (c)1999 Citrus Project, - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * citrus Id: wcswidth.c,v 1.1 1999/12/29 21:47:45 tshiozak Exp - */ - -#include -#if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: wcswidth.c,v 1.5 2008/08/12 21:59:27 tnozaki Exp $"); -#endif /* LIBC_SCCS and not lint */ - -#include "namespace.h" -#include -#include - -int -wcswidth(s, n) - const wchar_t *s; - size_t n; -{ - int w, x; - - _DIAGASSERT(s != NULL); - - w = 0; - while (n && *s) { - x = wcwidth(*s); - if (x < 0) - return -1; - w += x; - s++; - n--; - } - - return w; -} Index: lib/libc/string/wmemcmp.c =================================================================== RCS file: /cvsroot/src/lib/libc/string/wmemcmp.c,v retrieving revision 1.3 diff -u -r1.3 wmemcmp.c --- lib/libc/string/wmemcmp.c 6 Apr 2003 18:33:23 -0000 1.3 +++ lib/libc/string/wmemcmp.c 14 Dec 2008 18:55:48 -0000 @@ -35,7 +35,7 @@ #include #include -#include "locale/runetype.h" +#include "runetype.h" int wmemcmp(s1, s2, n) Index: share/locale/Makefile =================================================================== RCS file: /cvsroot/src/share/locale/Makefile,v retrieving revision 1.4 diff -u -r1.4 Makefile --- share/locale/Makefile 21 Jul 2004 19:02:17 -0000 1.4 +++ share/locale/Makefile 14 Dec 2008 18:55:48 -0000 @@ -5,7 +5,7 @@ NOOBJ= # defined NOMAN= # defined -SUBDIR= ctype +SUBDIR= ctype monetary numeric time messages FILES= locale.alias FILESOWN= ${LOCALEOWN} Index: share/locale/Makefile.locale =================================================================== RCS file: share/locale/Makefile.locale diff -N share/locale/Makefile.locale --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/Makefile.locale 14 Dec 2008 18:55:48 -0000 @@ -0,0 +1,165 @@ +# $NetBSD$ + +LANGUAGE= af be bg ca cs da de el en es \ + et eu fi fr hr hu hy is it ja \ + kk ko lt nl nn no pt pl ro ru \ + sk sl sr sv tr uk zh + +TERRITORY= AM AT AU BE BG BR BY CA CH CN \ + CZ DE DK EE ES FI FR GB GR HK \ + HR HU IS IT JP KR KZ LT ME NL \ + NO NZ PL PT RO RS RU SE SI SK \ + TR TW US UA ZA + +LANGUAGE_AM= hy +LANGUAGE_AT= de +LANGUAGE_AU= en +LANGUAGE_BE= fr nl +LANGUAGE_BG= bg +LANGUAGE_BR= pt +LANGUAGE_BY= be ru +LANGUAGE_CA= en fr +LANGUAGE_CH= de fr it +LANGUAGE_CN= zh +LANGUAGE_CZ= cs +LANGUAGE_DE= de +LANGUAGE_DK= da +LANGUAGE_EE= et +LANGUAGE_ES= ca es au +LANGUAGE_FI= fi +LANGUAGE_FR= fr +LANGUAGE_GB= en +LANGUAGE_GR= el +LANGUAGE_HK= zh +LANGUAGE_HR= hr +LANGUAGE_HU= hu +LANGUAGE_IS= is +LANGUAGE_IT= it +LANGUAGE_JP= ja +LANGUAGE_KR= ko +LANGUAGE_KZ= kk +LANGUAGE_LT= lt +LANGUAGE_ME= sr +LANGUAGE_NL= nl +LANGUAGE_NO= nn no +LANGUAGE_NZ= en +LANGUAGE_PL= pl +LANGUAGE_PT= pt +LANGUAGE_RO= ro +LANGUAGE_RU= ru +LANGUAGE_SE= sv +LANGUAGE_SI= sl +LANGUAGE_SK= sk +LANGUAGE_TR= tr +LANGUAGE_TW= zh +LANGUAGE_US= en +LANGUAGE_UA= uk +LANGUAGE_ZA= af + +TERRITORY_af= ZA +TERRITORY_be= BY +TERRITORY_bg= BG +TERRITORY_ca= ES +TERRITORY_cs= CZ +TERRITORY_da= DK +TERRITORY_de= AT CH DE +TERRITORY_el= GR +TERRITORY_en= AU CA GB NZ US +TERRITORY_es= ES +TERRITORY_et= EE +TERRITORY_eu= ES +TERRITORY_fi= FI +TERRITORY_fr= BE CA CH FR +TERRITORY_hr= HR +TERRITORY_hu= HU +TERRITORY_hy= AM +TERRITORY_is= IS +TERRITORY_it= CH IT +TERRITORY_ja= JP +TERRITORY_kk= KZ +TERRITORY_ko= KR +TERRITORY_lt= LT +TERRITORY_nl= BE NL +TERRITORY_nn= NO +TERRITORY_no= NO +TERRITORY_pt= BR PT +TERRITORY_pl= PL +TERRITORY_ro= RO +TERRITORY_ru= BY RU +TERRITORY_sk= SK +TERRITORY_sl= SI +TERRITORY_sr= ME RS +TERRITORY_sv= SE +TERRITORY_tr= TR +TERRITORY_uk= UA +TERRITORY_zh= CN HK TW + +CODESET_af_ZA= ISO8859-1 ISO8859-15 +CODESET_be_BY= ISO8859-5 CP1251 +CODESET_bg_BG= CP1251 +CODESET_ca_ES= ISO8859-1 ISO8859-15 +CODESET_cs_CZ= ISO8859-2 +CODESET_da_DK= ISO8859-1 ISO8859-15 +CODESET_de_AT= ISO8859-1 ISO8859-15 +CODESET_de_CH= ISO8859-1 ISO8859-15 +CODESET_de_DE= ISO8859-1 ISO8859-15 +CODESET_el_GR= ISO8859-7 +CODESET_en_AU= ISO8859-1 ISO8859-15 +CODESET_en_CA= ISO8859-1 ISO8859-15 +CODESET_en_GB= ISO8859-1 ISO8859-15 +CODESET_en_NZ= ISO8859-1 ISO8859-15 +CODESET_en_US= US-ASCII UTF-8 ISO8859-1 ISO8859-15 +CODESET_es_ES= ISO8859-1 ISO8859-15 +CODESET_et_EE= ISO8859-15 +CODESET_eu_ES= ISO8859-1 ISO8859-15 +CODESET_fi_FI= ISO8859-1 ISO8859-15 +CODESET_fr_BE= ISO8859-1 ISO8859-15 +CODESET_fr_CA= ISO8859-1 ISO8859-15 +CODESET_fr_CH= ISO8859-1 ISO8859-15 +CODESET_fr_FR= ISO8859-1 ISO8859-15 +CODESET_hr_HR= ISO8859-2 +CODESET_hu_HU= ISO8859-2 +CODESET_hy_AM= ARMSCII-8 +CODESET_is_IS= ISO8859-1 ISO8859-15 +CODESET_it_CH= ISO8859-1 ISO8859-15 +CODESET_it_IT= ISO8859-1 ISO8859-15 +CODESET_ja_JP= eucJP SJIS ISO-2022-JP ISO-2022-JP-2 ct +CODESET_kk_KZ= PT154 +CODESET_ko_KR= eucKR +CODESET_lt_LT= ISO8859-4 ISO8859-13 +CODESET_nl_BE= ISO8859-1 ISO8859-15 +CODESET_nl_NL= ISO8859-1 ISO8859-15 +CODESET_nn_NO= ISO8859-1 ISO8859-15 +CODESET_no_NO= ISO8859-1 ISO8859-15 +CODESET_pt_BR= ISO8859-1 +CODESET_pl_PL= ISO8859-2 +CODESET_pt_PT= ISO8859-1 ISO8859-15 +CODESET_ro_RO= ISO8859-2 +CODESET_ru_BY= CP1251 +CODESET_ru_RU= ISO8859-5 CP866 CP1251 KOI8-R +CODESET_sk_SK= ISO8859-2 +CODESET_sl_SI= ISO8859-2 +CODESET_sr_ME= ISO8859-2 ISO8859-5 +CODESET_sr_RS= ISO8859-2 ISO8859-5 +CODESET_sv_SE= ISO8859-1 ISO8859-15 +CODESET_tr_TR= ISO8859-9 +CODESET_uk_UA= ISO8859-5 CP1251 KOI8-U +CODESET_zh_CN= eucCN GB18030 +CODESET_zh_HK= Big5hkscs +CODESET_zh_TW= Big5 eucTW + +.for language in ${LANGUAGE} +.for territory in ${TERRITORY_${language}} +.for codeset in ${CODESET_${language}_${territory}} +LOCALES+=${language}_${territory}.${codeset} +.if empty(LOCALESRC_${language}_${territory}.${codeset}) +LOCALESRC_${language}_${territory}.${codeset}= \ + ${language}_${territory}.${codeset} +.endif +FILESDIR_${language}_${territory}.${codeset}.out= \ + ${LOCALEDIR}/${language}_${territory}.${codeset} +FILESNAME_${language}_${territory}.${codeset}.out= \ + ${LOCALEFILE} +.endfor +.endfor +.endfor Index: share/locale/locale.alias =================================================================== RCS file: /cvsroot/src/share/locale/locale.alias,v retrieving revision 1.10 diff -u -r1.10 locale.alias --- share/locale/locale.alias 21 Jun 2008 07:06:01 -0000 1.10 +++ share/locale/locale.alias 14 Dec 2008 18:55:48 -0000 @@ -115,20 +115,20 @@ zh_TW.UTF-8/LC_MESSAGES /FORCE # Pig locale -Pig /FORCE - -# Preexisting alias for zh_TW.Big5 -zh_TW.BIG5 zh_TW.Big5 +Pig/LC_MESSAGES /FORCE # Linux/FreeBSD compatibility, EUC-CN == GB2312 zh_CN.GB2312 zh_CN.eucCN -# FreeBSD compatibility. -zh_HK.Big5HKSCS zh_HK.Big5-HKSCS +# FreeBSD compatibility +zh_HK.Big5HKSCS zh_HK.Big5hkscs # nb(Bokmal, Norwegian) == no(Norwegian) nb_NO.ISO8859-1 no_NO.ISO8859-1 nb_NO.ISO8859-15 no_NO.ISO8859-15 -# XFree86 compatibility. -ja_JP.ISO-2022-JP ja_JP.ISO2022-JP +# backward compatibility. +ja_JP.ISO2022-JP ja_JP.ISO-2022-JP +ja_JP.ISO2022-JP2 ja_JP.ISO-2022-JP-2 +zh_HK.Big5-HKSCS zh_HK.Big5hkscs +zh_TW.BIG5 zh_TW.Big5 Index: share/locale/ctype/Makefile =================================================================== RCS file: /cvsroot/src/share/locale/ctype/Makefile,v retrieving revision 1.27 diff -u -r1.27 Makefile --- share/locale/ctype/Makefile 25 Oct 2008 22:27:36 -0000 1.27 +++ share/locale/ctype/Makefile 14 Dec 2008 18:55:48 -0000 @@ -1,331 +1,125 @@ -# $NetBSD: Makefile,v 1.27 2008/10/25 22:27:36 apb Exp $ +# $NetBSD$ NOMAN= # defined # pull LOCALEDIR and other declarations .include -FILESOWN= ${LOCALEOWN} -FILESGRP= ${LOCALEGRP} -FILESMODE= ${LOCALEMODE} +LOCALEFILE= LC_CTYPE -LOCALES += af_ZA.ISO8859-1 - LOCALESRC_af_ZA.ISO8859-1 = en_US.ISO_8859-1 +LOCALESRC_af_ZA.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_af_ZA.ISO8859-15= en_US.DIS_8859-15 +#LOCALESRC_am_ET.UTF-8= en_US.UTF-8 +LOCALESRC_be_BY.CP1251= bg_BG.CP1251 +LOCALESRC_be_BY.ISO8859-5= ru_RU.ISO_8859-5 +LOCALESRC_bg_BG.CP1251= bg_BG.CP1251 +LOCALESRC_ca_ES.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_ca_ES.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_cs_CZ.ISO8859-2= en_US.ISO_8859-2 +LOCALESRC_da_DK.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_da_DK.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_de_AT.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_de_AT.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_de_CH.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_de_CH.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_de_DE.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_de_DE.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_el_GR.ISO8859-7= el_GR.ISO8859-7 +LOCALESRC_en_AU.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_en_AU.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_en_CA.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_en_CA.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_en_GB.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_en_GB.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_en_NZ.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_en_NZ.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_en_US.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_en_US.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_en_US.US-ASCII= en_US.ASCII +LOCALESRC_en_US.UTF-8= en_US.UTF-8 +LOCALESRC_es_ES.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_es_ES.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_et_EE.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_eu_ES.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_eu_ES.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_fi_FI.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_fi_FI.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_fr_BE.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_fr_BE.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_fr_CA.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_fr_CA.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_fr_CH.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_fr_CH.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_fr_FR.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_fr_FR.ISO8859-15= en_US.DIS_8859-15 +#LOCALESRC_he_IL.UTF-8= en_US.UTF-8 +LOCALESRC_hr_HR.ISO8859-2= en_US.ISO_8859-2 +LOCALESRC_hu_HU.ISO8859-2= en_US.ISO_8859-2 +LOCALESRC_hy_AM.ARMSCII-8= hy_AM.ARMSCII-8 +LOCALESRC_is_IS.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_is_IS.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_it_CH.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_it_CH.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_it_IT.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_it_IT.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_ja_JP.SJIS= ja_JP.SJIS +LOCALESRC_ja_JP.ct= ja_JP.CTEXT +LOCALESRC_ja_JP.eucJP= ja_JP.eucJP +LOCALESRC_kk_KZ.PT154= kk_KZ.PT154 +LOCALESRC_ko_KR.eucKR= ko_KR.eucKR +LOCALESRC_lt_LT.ISO8859-4= en_US.ISO_8859-4 +LOCALESRC_lt_LT.ISO8859-13= lt_LT.ISO8859-13 +#LOCALESRC_mn_MN.UTF-8= en_US.UTF-8 +LOCALESRC_nl_BE.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_nl_BE.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_nl_NL.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_nl_NL.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_nn_NO.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_nn_NO.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_no_NO.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_no_NO.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_pl_PL.ISO8859-2= en_US.ISO_8859-2 +LOCALESRC_pt_BR.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_pt_PT.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_pt_PT.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_ro_RO.ISO8859-2= en_US.ISO_8859-2 +LOCALESRC_ru_RU.CP866= ru_RU.CP866 +LOCALESRC_ru_BY.CP1251= bg_BG.CP1251 +LOCALESRC_ru_RU.CP1251= bg_BG.CP1251 +LOCALESRC_ru_RU.ISO8859-5= ru_RU.ISO_8859-5 +LOCALESRC_ru_RU.KOI8-R= ru_RU.KOI8-R +LOCALESRC_sk_SK.ISO8859-2= en_US.ISO_8859-2 +LOCALESRC_sl_SI.ISO8859-2= en_US.ISO_8859-2 +LOCALESRC_sr_ME.ISO8859-2= en_US.ISO_8859-2 +LOCALESRC_sr_ME.ISO8859-5= ru_RU.ISO_8859-5 +LOCALESRC_sr_RS.ISO8859-2= en_US.ISO_8859-2 +LOCALESRC_sr_RS.ISO8859-5= ru_RU.ISO_8859-5 +LOCALESRC_sv_SE.ISO8859-1= en_US.ISO_8859-1 +LOCALESRC_sv_SE.ISO8859-15= en_US.DIS_8859-15 +LOCALESRC_tr_TR.ISO8859-9= tr_TR.ISO8859-9 +LOCALESRC_uk_UA.CP1251= bg_BG.CP1251 +LOCALESRC_uk_UA.ISO8859-5= ru_RU.ISO_8859-5 +LOCALESRC_uk_UA.KOI8-U= uk_UA.KOI8-U +LOCALESRC_zh_CN.GB18030= zh_CN.GB18030 +LOCALESRC_zh_CN.eucCN= zh_CN.eucCN +LOCALESRC_zh_HK.Big5hkscs= zh_HK.Big5-HKSCS +LOCALESRC_zh_TW.Big5= zh_TW.BIG5 +LOCALESRC_zh_TW.eucTW= zh_TW.eucTW -LOCALES += af_ZA.ISO8859-15 - LOCALESRC_af_ZA.ISO8859-15 = en_US.DIS_8859-15 +.include "${.CURDIR}/../Makefile.locale" -LOCALES += be_BY.CP1251 - LOCALESRC_be_BY.CP1251 = bg_BG.CP1251 +all: ${LOCALES:S/$/.out/g} +realall: ${LOCALES:S/$/.out/g} -LOCALES += be_BY.ISO8859-5 - LOCALESRC_be_BY.ISO8859-5 = ru_RU.ISO_8859-5 - -LOCALES += bg_BG.CP1251 - LOCALESRC_bg_BG.CP1251 = bg_BG.CP1251 - -LOCALES += ca_ES.ISO8859-1 - LOCALESRC_ca_ES.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += ca_ES.ISO8859-15 - LOCALESRC_ca_ES.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += cs_CZ.ISO8859-2 - LOCALESRC_cs_CZ.ISO8859-2 = en_US.ISO_8859-2 - -LOCALES += da_DK.ISO8859-1 - LOCALESRC_da_DK.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += da_DK.ISO8859-15 - LOCALESRC_da_DK.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += de_AT.ISO8859-1 - LOCALESRC_de_AT.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += de_AT.ISO8859-15 - LOCALESRC_de_AT.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += de_CH.ISO8859-1 - LOCALESRC_de_CH.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += de_CH.ISO8859-15 - LOCALESRC_de_CH.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += de_DE.ISO8859-1 - LOCALESRC_de_DE.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += de_DE.ISO8859-15 - LOCALESRC_de_DE.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += el_GR.ISO8859-7 - LOCALESRC_el_GR.ISO8859-7 = el_GR.ISO8859-7 - -LOCALES += en_AU.ISO8859-1 - LOCALESRC_en_AU.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += en_AU.ISO8859-15 - LOCALESRC_en_AU.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += en_CA.ISO8859-1 - LOCALESRC_en_CA.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += en_CA.ISO8859-15 - LOCALESRC_en_CA.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += en_GB.ISO8859-1 - LOCALESRC_en_GB.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += en_GB.ISO8859-15 - LOCALESRC_en_GB.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += en_NZ.ISO8859-1 - LOCALESRC_en_NZ.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += en_NZ.ISO8859-15 - LOCALESRC_en_NZ.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += en_US.ISO8859-1 - LOCALESRC_en_US.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += en_US.ISO8859-15 - LOCALESRC_en_US.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += en_US.UTF-8 - LOCALESRC_en_US.UTF-8 = en_US.UTF-8 - -LOCALES += es_ES.ISO8859-1 - LOCALESRC_es_ES.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += es_ES.ISO8859-15 - LOCALESRC_es_ES.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += et_EE.ISO8859-15 - LOCALESRC_et_EE.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += eu_ES.ISO8859-1 - LOCALESRC_eu_ES.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += eu_ES.ISO8859-15 - LOCALESRC_eu_ES.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += fi_FI.ISO8859-1 - LOCALESRC_fi_FI.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += fi_FI.ISO8859-15 - LOCALESRC_fi_FI.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += fr_BE.ISO8859-1 - LOCALESRC_fr_BE.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += fr_BE.ISO8859-15 - LOCALESRC_fr_BE.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += fr_CA.ISO8859-1 - LOCALESRC_fr_CA.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += fr_CA.ISO8859-15 - LOCALESRC_fr_CA.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += fr_CH.ISO8859-1 - LOCALESRC_fr_CH.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += fr_CH.ISO8859-15 - LOCALESRC_fr_CH.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += fr_FR.ISO8859-1 - LOCALESRC_fr_FR.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += fr_FR.ISO8859-15 - LOCALESRC_fr_FR.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += hr_HR.ISO8859-2 - LOCALESRC_hr_HR.ISO8859-2 = en_US.ISO_8859-2 - -LOCALES += hu_HU.ISO8859-2 - LOCALESRC_hu_HU.ISO8859-2 = en_US.ISO_8859-2 - -LOCALES += hy_AM.ARMSCII-8 - LOCALESRC_hy_AM.ARMSCII-8 = hy_AM.ARMSCII-8 - -LOCALES += is_IS.ISO8859-1 - LOCALESRC_is_IS.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += is_IS.ISO8859-15 - LOCALESRC_is_IS.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += it_CH.ISO8859-1 - LOCALESRC_it_CH.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += it_CH.ISO8859-15 - LOCALESRC_it_CH.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += it_IT.ISO8859-1 - LOCALESRC_it_IT.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += it_IT.ISO8859-15 - LOCALESRC_it_IT.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += ja_JP.ct - LOCALESRC_ja_JP.ct = ja_JP.CTEXT - -LOCALES += ja_JP.eucJP - LOCALESRC_ja_JP.eucJP = ja_JP.eucJP - -LOCALES += ja_JP.ISO2022-JP - LOCALESRC_ja_JP.ISO2022-JP = ja_JP.ISO-2022-JP - -LOCALES += ja_JP.ISO2022-JP2 - LOCALESRC_ja_JP.ISO2022-JP2 = ja_JP.ISO-2022-JP-2 - -LOCALES += ja_JP.SJIS - LOCALESRC_ja_JP.SJIS = ja_JP.SJIS - -LOCALES += kk_KZ.PT154 - LOCALESRC_kk_KZ.PT154 = kk_KZ.PT154 - -LOCALES += ko_KR.eucKR - LOCALESRC_ko_KR.eucKR = ko_KR.eucKR - -LOCALES += lt_LT.ISO8859-4 - LOCALESRC_lt_LT.ISO8859-4 = en_US.ISO_8859-4 - -LOCALES += lt_LT.ISO8859-13 - LOCALESRC_lt_LT.ISO8859-13 = lt_LT.ISO8859-13 - -LOCALES += nl_BE.ISO8859-1 - LOCALESRC_nl_BE.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += nl_BE.ISO8859-15 - LOCALESRC_nl_BE.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += nl_NL.ISO8859-1 - LOCALESRC_nl_NL.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += nl_NL.ISO8859-15 - LOCALESRC_nl_NL.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += nn_NO.ISO8859-1 - LOCALESRC_nn_NO.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += nn_NO.ISO8859-15 - LOCALESRC_nn_NO.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += no_NO.ISO8859-1 - LOCALESRC_no_NO.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += no_NO.ISO8859-15 - LOCALESRC_no_NO.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += pt_BR.ISO8859-1 - LOCALESRC_pt_BR.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += pl_PL.ISO8859-2 - LOCALESRC_pl_PL.ISO8859-2 = en_US.ISO_8859-2 - -LOCALES += pt_PT.ISO8859-1 - LOCALESRC_pt_PT.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += pt_PT.ISO8859-15 - LOCALESRC_pt_PT.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += ro_RO.ISO8859-2 - LOCALESRC_ro_RO.ISO8859-2 = en_US.ISO_8859-2 - -LOCALES += ru_BY.CP1251 - LOCALESRC_ru_BY.CP1251 = bg_BG.CP1251 - -LOCALES += ru_RU.CP1251 - LOCALESRC_ru_RU.CP1251 = bg_BG.CP1251 - -LOCALES += ru_RU.CP866 - LOCALESRC_ru_RU.CP866 = ru_RU.CP866 - -LOCALES += ru_RU.KOI8-R - LOCALESRC_ru_RU.KOI8-R = ru_RU.KOI8-R - -LOCALES += ru_RU.ISO8859-5 - LOCALESRC_ru_RU.ISO8859-5 = ru_RU.ISO_8859-5 - -LOCALES += sk_SK.ISO8859-2 - LOCALESRC_sk_SK.ISO8859-2 = en_US.ISO_8859-2 - -LOCALES += sl_SI.ISO8859-2 - LOCALESRC_sl_SI.ISO8859-2 = en_US.ISO_8859-2 - -LOCALES += sr_YU.ISO8859-2 - LOCALESRC_sr_YU.ISO8859-2 = en_US.ISO_8859-2 - -LOCALES += sr_YU.ISO8859-5 - LOCALESRC_sr_YU.ISO8859-5 = ru_RU.ISO_8859-5 - -LOCALES += sv_SE.ISO8859-1 - LOCALESRC_sv_SE.ISO8859-1 = en_US.ISO_8859-1 - -LOCALES += sv_SE.ISO8859-15 - LOCALESRC_sv_SE.ISO8859-15 = en_US.DIS_8859-15 - -LOCALES += tr_TR.ISO8859-9 - LOCALESRC_tr_TR.ISO8859-9 = tr_TR.ISO8859-9 - -LOCALES += uk_UA.ISO8859-5 - LOCALESRC_uk_UA.ISO8859-5 = ru_RU.ISO_8859-5 - -LOCALES += uk_UA.CP1251 - LOCALESRC_uk_UA.CP1251 = bg_BG.CP1251 - -LOCALES += uk_UA.KOI8-U - LOCALESRC_uk_UA.KOI8-U = uk_UA.KOI8-U - -LOCALES += zh_CN.eucCN - LOCALESRC_zh_CN.eucCN = zh_CN.eucCN - -LOCALES += zh_CN.GB18030 - LOCALESRC_zh_CN.GB18030 = zh_CN.GB18030 - -LOCALES += zh_HK.Big5-HKSCS - LOCALESRC_zh_HK.Big5-HKSCS = zh_HK.Big5-HKSCS - -LOCALES += zh_TW.Big5 - LOCALESRC_zh_TW.Big5 = zh_TW.BIG5 - -# XXX: EUC-TW is not EUC! -LOCALES += zh_TW.eucTW - LOCALESRC_zh_TW.eucTW = zh_TW.eucTW - -all: ${LOCALES:S/$/.out/g} -realall: ${LOCALES:S/$/.out/g} - -.for locale in ${LOCALES} -LOCALESRCS+= ${LOCALESRC_${locale}} -.endfor +FILES= ${LOCALES:S/$/.out/g} CLEANFILES+= ${LOCALES:S/$/.out/g} -# TODO: more use of symlinks? -FILES= ${LOCALES:S/$/.out/g} .for locale in ${LOCALES} -FILESDIR_${locale}.out= ${LOCALEDIR}/${locale} -FILESNAME_${locale}.out= LC_CTYPE -.endfor - -# dependencies -.for locale in ${LOCALES} -${locale}.out: ${LOCALESRC_${locale}}.src \ - ${NETBSDSRCDIR}/lib/libc/locale/runetable.c +${locale}.out: ${LOCALESRC_${locale}}.src ${_MKTARGET_CREATE} ${CPP} -I${.CURDIR} < ${.CURDIR}/${LOCALESRC_${locale}}.src | \ - ${TOOL_SED} -e '/^#/d' | ${TOOL_MKLOCALE} -o ${.TARGET} + ${TOOL_SED} -e '/^#/d' | \ + ${TOOL_MKLOCALE} -t ctype -o ${.TARGET} .endfor -.SUFFIXES: .src .out -.src.out: - ${_MKTARGET_CREATE} - ${CPP} -I${.CURDIR} < ${.IMPSRC} | ${TOOL_SED} -e '/^#/d' | \ - ${TOOL_MKLOCALE} -o ${.TARGET} - -# does not work -#depend: -# ${MKDEP} -a ${MKDEPFLAGS} \ -# ${CPPFLAGS:M-[ID]*} ${CPPFLAGS} \ -# ${LOCALESRCS:S/$/.src/g:S/^/${.CURDIR}\//g} - .include Index: share/locale/messages/Makefile =================================================================== RCS file: /cvsroot/src/share/locale/messages/Makefile,v retrieving revision 1.4 diff -u -r1.4 Makefile --- share/locale/messages/Makefile 4 Jun 2008 13:19:31 -0000 1.4 +++ share/locale/messages/Makefile 14 Dec 2008 18:55:48 -0000 @@ -1,244 +1,72 @@ -# $NetBSD: Makefile,v 1.4 2008/06/04 13:19:31 ginsbach Exp $ +# $NetBSD$ -NOMAN= # defined +NOMAN= # defined # pull LOCALEDIR and other declarations .include -FILESOWN= ${LOCALEOWN} -FILESGRP= ${LOCALEGRP} -FILESMODE= ${LOCALEMODE} +LOCALEFILE= LC_MESSAGES/SYS_LC_MESSAGES -LOCALES += af_ZA.ISO8859-1 - LOCALESRC_af_ZA.ISO8859-1 = af_ZA.ISO8859-1 +LOCALESRC_af_ZA.ISO8859-15= af_ZA.ISO8859-1 +LOCALESRC_ca_ES.ISO8859-15= ca_ES.ISO8859-1 +LOCALESRC_da_DK.ISO8859-15= da_DK.ISO8859-1 +LOCALESRC_de_AT.ISO8859-1= de_DE.ISO8859-1 +LOCALESRC_de_AT.ISO8859-15= de_DE.ISO8859-1 +LOCALESRC_de_CH.ISO8859-1= de_DE.ISO8859-1 +LOCALESRC_de_CH.ISO8859-15= de_DE.ISO8859-1 +LOCALESRC_de_DE.ISO8859-15= de_DE.ISO8859-1 +LOCALESRC_en_AU.ISO8859-1= en_GB.ISO8859-1 +LOCALESRC_en_AU.ISO8859-15= en_GB.ISO8859-1 +LOCALESRC_en_CA.ISO8859-15= en_CA.ISO8859-1 +LOCALESRC_en_GB.ISO8859-15= en_GB.ISO8859-1 +LOCALESRC_en_NZ.ISO8859-1= en_GB.ISO8859-1 +LOCALESRC_en_NZ.ISO8859-15= en_GB.ISO8859-1 +LOCALESRC_en_US.ISO8859-1= en_US.US-ASCII +LOCALESRC_en_US.ISO8859-15= en_US.US-ASCII +LOCALESRC_en_US.UTF-8= en_US.US-ASCII +LOCALESRC_es_ES.ISO8859-15= es_ES.ISO8859-1 +LOCALESRC_eu_ES.ISO8859-15= eu_ES.ISO8859-1 +LOCALESRC_fi_FI.ISO8859-15= fi_FI.ISO8859-1 +LOCALESRC_fr_BE.ISO8859-15= fr_BE.ISO8859-1 +LOCALESRC_fr_CA.ISO8859-1= fr_FR.ISO8859-1 +LOCALESRC_fr_CA.ISO8859-15= fr_FR.ISO8859-1 +LOCALESRC_fr_CH.ISO8859-15= fr_CH.ISO8859-1 +LOCALESRC_fr_FR.ISO8859-15= fr_FR.ISO8859-1 +LOCALESRC_is_IS.ISO8859-15= is_IS.ISO8859-1 +LOCALESRC_it_CH.ISO8859-1= it_IT.ISO8859-1 +LOCALESRC_it_CH.ISO8859-15= it_IT.ISO8859-1 +LOCALESRC_it_IT.ISO8859-15= it_IT.ISO8859-1 +LOCALESRC_ja_JP.ISO-2022-JP-2= ja_JP.ISO-2022-JP +LOCALESRC_lt_LT.ISO8859-4= lt_LT.ISO8859-13 +LOCALESRC_nl_BE.ISO8859-1= nl_NL.ISO8859-1 +LOCALESRC_nl_BE.ISO8859-15= nl_NL.ISO8859-1 +LOCALESRC_nl_NL.ISO8859-15= nl_NL.ISO8859-1 +LOCALESRC_nn_NO.ISO8859-1= no_NO.ISO8859-1 +LOCALESRC_nn_NO.ISO8859-15= no_NO.ISO8859-1 +LOCALESRC_no_NO.ISO8859-15= no_NO.ISO8859-1 +LOCALESRC_pt_BR.ISO8859-1= pt_PT.ISO8859-1 +LOCALESRC_pt_PT.ISO8859-15= pt_PT.ISO8859-1 +LOCALESRC_ru_BY.CP1251= ru_RU.CP1251 +LOCALESRC_sr_RS.ISO8859-2= sr_ME.ISO8859-2 +LOCALESRC_sr_RS.ISO8859-5= sr_ME.ISO8859-5 +LOCALESRC_sk_SK.ISO8859-2= cs_CZ.ISO8859-2 +LOCALESRC_sv_SE.ISO8859-15= sv_SE.ISO8859-1 +LOCALESRC_zh_CN.GB18030= zh_CN.eucCN +LOCALESRC_zh_HK.Big5hkscs= zh_TW.Big5 -LOCALES += am_ET.UTF-8 - LOCALESRC_am_ET.UTF-8 = am_ET.UTF-8 +.include "${.CURDIR}/../Makefile.locale" -LOCALES += be_BY.CP1131 - LOCALESRC_be_BY.CP1131 = be_BY.CP1131 +all: ${LOCALES:S/$/.out/g} +realall: ${LOCALES:S/$/.out/g} -LOCALES += be_BY.CP1251 - LOCALESRC_be_BY.CP1251 = be_BY.CP1251 - -LOCALES += be_BY.ISO8859-5 - LOCALESRC_be_BY.ISO8859-5 = be_BY.ISO8859-5 - -LOCALES += be_BY.UTF-8 - LOCALESRC_be_BY.UTF-8 = be_BY.UTF-8 - -LOCALES += bg_BG.CP1251 - LOCALESRC_bg_BG.CP1251 = bg_BG.CP1251 - -LOCALES += bg_BG.UTF-8 - LOCALESRC_bg_BG.UTF-8 = bg_BG.UTF-8 - -LOCALES += ca_ES.ISO8859-1 - LOCALESRC_ca_ES.ISO8859-1 = ca_ES.ISO8859-1 - -LOCALES += cs_CZ.ISO8859-2 - LOCALESRC_cs_CZ.ISO8859-2 = cs_CZ.ISO8859-2 - -LOCALES += da_DK.ISO8859-1 - LOCALESRC_da_DK.ISO8859-1 = da_DK.ISO8859-1 - -LOCALES += de_DE.ISO8859-1 - LOCALESRC_de_DE.ISO8859-1 = de_DE.ISO8859-1 - -LOCALES += el_GR.ISO8859-7 - LOCALESRC_el_GR.ISO8859-7 = el_GR.ISO8859-7 - -LOCALES += el_GR.UTF-8 - LOCALESRC_el_GR.UTF-8 = el_GR.UTF-8 - -LOCALES += en_CA.ISO8859-1 - LOCALESRC_en_CA.ISO8859-1 = en_CA.ISO8859-1 - -LOCALES += en_GB.ISO8859-1 - LOCALESRC_en_GB.ISO8859-1 = en_GB.ISO8859-1 - -LOCALES += en_US.ISO8859-1 - LOCALESRC_en_US.ISO8859-1 = en_US.ISO8859-1 - -LOCALES += es_ES.ISO8859-1 - LOCALESRC_es_ES.ISO8859-1 = es_ES.ISO8859-1 - -LOCALES += et_EE.ISO8859-15 - LOCALESRC_et_EE.ISO8859-15 = et_EE.ISO8859-15 - -LOCALES += eu_ES.ISO8859-1 - LOCALESRC_eu_ES.ISO8859-1 = eu_ES.ISO8859-1 - -LOCALES += fi_FI.ISO8859-1 - LOCALESRC_fi_FI.ISO8859-1 = fi_FI.ISO8859-1 - -LOCALES += fr_BE.ISO8859-1 - LOCALESRC_fr_BE.ISO8859-1 = fr_BE.ISO8859-1 - -LOCALES += fr_CH.ISO8859-1 - LOCALESRC_fr_CH.ISO8859-1 = fr_CH.ISO8859-1 - -LOCALES += fr_FR.ISO8859-1 - LOCALESRC_fr_FR.ISO8859-1 = fr_FR.ISO8859-1 - -LOCALES += he_IL.UTF-8 - LOCALESRC_he_IL.UTF-8 = he_IL.UTF-8 - -# XXX codeset not yet supported by LC_TYPE and iconv(3) -#LOCALES += hi_IN.ISCII-DEV -# LOCALESRC_hi_IN.ISCII-DEV = hi_IN.ISCII-DEV - -LOCALES += hr_HR.ISO8859-2 - LOCALESRC_hr_HR.ISO8859-2 = hr_HR.ISO8859-2 - -LOCALES += hu_HU.ISO8859-2 - LOCALESRC_hu_HU.ISO8859-2 = hu_HU.ISO8859-2 - -LOCALES += hy_AM.ARMSCII-8 - LOCALESRC_hy_AM.ARMSCII-8 = hy_AM.ARMSCII-8 - -LOCALES += hy_AM.UTF-8 - LOCALESRC_hy_AM.UTF-8 = hy_AM.UTF-8 - -LOCALES += is_IS.ISO8859-1 - LOCALESRC_is_IS.ISO8859-1 = is_IS.ISO8859-1 - -LOCALES += it_IT.ISO8859-1 - LOCALESRC_it_IT.ISO8859-1 = it_IT.ISO8859-1 - -LOCALES += ja_JP.SJIS - LOCALESRC_ja_JP.SJIS = ja_JP.SJIS - -LOCALES += ja_JP.UTF-8 - LOCALESRC_ja_JP.UTF-8 = ja_JP.UTF-8 - -LOCALES += ja_JP.eucJP - LOCALESRC_ja_JP.eucJP = ja_JP.eucJP - -LOCALES += kk_KZ.PT154 - LOCALESRC_kk_KZ.PT154 = kk_KZ.PT154 - -LOCALES += kk_KZ.UTF-8 - LOCALESRC_kk_KZ.UTF-8 = kk_KZ.UTF-8 - -LOCALES += ko_KR.UTF-8 - LOCALESRC_ko_KR.UTF-8 = ko_KR.UTF-8 - -LOCALES += ko_KR.eucKR - LOCALESRC_ko_KR.eucKR = ko_KR.eucKR - -LOCALES += lt_LT.ISO8859-13 - LOCALESRC_lt_LT.ISO8859-13 = lt_LT.ISO8859-13 - -LOCALES += mn_MN.UTF-8 - LOCALESRC_mn_MN.UTF-8 = mn_MN.UTF-8 - -LOCALES += nl_NL.ISO8859-1 - LOCALESRC_nl_NL.ISO8859-1 = nl_NL.ISO8859-1 - -LOCALES += no_NO.ISO8859-1 - LOCALESRC_no_NO.ISO8859-1 = no_NO.ISO8859-1 - -LOCALES += pl_PL.ISO8859-2 - LOCALESRC_pl_PL.ISO8859-2 = pl_PL.ISO8859-2 - -LOCALES += pt_PT.ISO8859-1 - LOCALESRC_pt_PT.ISO8859-1 = pt_PT.ISO8859-1 - -LOCALES += ro_RO.ISO8859-2 - LOCALESRC_ro_RO.ISO8859-2 = ro_RO.ISO8859-2 - -LOCALES += ru_RU.CP1251 - LOCALESRC_ru_RU.CP1251 = ru_RU.CP1251 - -LOCALES += ru_RU.CP866 - LOCALESRC_ru_RU.CP866 = ru_RU.CP866 - -LOCALES += ru_RU.ISO8859-5 - LOCALESRC_ru_RU.ISO8859-5 = ru_RU.ISO8859-5 - -LOCALES += ru_RU.KOI8-R - LOCALESRC_ru_RU.KOI8-R = ru_RU.KOI8-R - -LOCALES += ru_RU.UTF-8 - LOCALESRC_ru_RU.UTF-8 = ru_RU.UTF-8 - -LOCALES += sl_SI.ISO8859-2 - LOCALESRC_sl_SI.ISO8859-2 = sl_SI.ISO8859-2 - -LOCALES += sr_YU.ISO8859-2 - LOCALESRC_sr_YU.ISO8859-2 = sr_YU.ISO8859-2 - -LOCALES += sr_YU.ISO8859-5 - LOCALESRC_sr_YU.ISO8859-5 = sr_YU.ISO8859-5 - -LOCALES += sr_YU.UTF-8 - LOCALESRC_sr_YU.UTF-8 = sr_YU.UTF-8 - -LOCALES += sv_SE.ISO8859-1 - LOCALESRC_sv_SE.ISO8859-1 = sv_SE.ISO8859-1 - -LOCALES += tr_TR.ISO8859-9 - LOCALESRC_tr_TR.ISO8859-9 = tr_TR.ISO8859-9 - -LOCALES += uk_UA.CP1251 - LOCALESRC_uk_UA.CP1251 = uk_UA.CP1251 - -LOCALES += uk_UA.ISO8859-5 - LOCALESRC_uk_UA.ISO8859-5 = uk_UA.ISO8859-5 - -LOCALES += uk_UA.KOI8-U - LOCALESRC_uk_UA.KOI8-U = uk_UA.KOI8-U - -LOCALES += uk_UA.UTF-8 - LOCALESRC_uk_UA.UTF-8 = uk_UA.UTF-8 - -LOCALES += zh_CN.GB18030 - LOCALESRC_zh_CN.GB18030 = zh_CN.GB18030 - -LOCALES += zh_CN.UTF-8 - LOCALESRC_zh_CN.UTF-8 = zh_CN.UTF-8 - -LOCALES += zh_CN.eucCN - LOCALESRC_zh_CN.eucCN = zh_CN.eucCN - -LOCALES += zh_TW.Big5 - LOCALESRC_zh_TW.Big5 = zh_TW.Big5 - -LOCALES += zh_TW.UTF-8 - LOCALESRC_zh_TW.UTF-8 = zh_TW.UTF-8 - -all: ${LOCALES:S/$/.out/g} -realall: ${LOCALES:S/$/.out/g} - -.for locale in ${LOCALES} -LOCALESRCS+= ${LOCALESRC_${locale}} -.endfor -CLEANFILES+= ${LOCALES:S/$/.out/g} - -# TODO: more use of symlinks? FILES= ${LOCALES:S/$/.out/g} -.for locale in ${LOCALES} -FILESDIR_${locale}.out= ${LOCALEDIR}/${locale} -FILESNAME_${locale}.out= LC_MESSAGES -.endfor +CLEANFILES+= ${LOCALES:S/$/.out/g} -# dependencies .for locale in ${LOCALES} ${locale}.out: ${LOCALESRC_${locale}}.src ${_MKTARGET_CREATE} - ${TOOL_SED} -e '/^#/d' ${.CURDIR}/${LOCALESRC_${locale}}.src > ${.TARGET} + ${TOOL_MKLOCALE} -t messages -o ${.TARGET} \ + < ${.CURDIR}/${LOCALESRC_${locale}}.src .endfor -.SUFFIXES: .src .out -.src.out: - ${_MKTARGET_CREATE} - ${TOOL_SED} -e '/^#/d' ${.IMPSRC} > ${.TARGET} - -# does not work -#depend: -# ${MKDEP} -a ${MKDEPFLAGS} \ -# ${CPPFLAGS:M-[ID]*} ${CPPFLAGS} \ -# ${LOCALESRC:S/$/.src/g:S/^/${.CURDIR}\//g} - .include Index: share/locale/messages/en_US.ISO8859-1.src =================================================================== RCS file: share/locale/messages/en_US.ISO8859-1.src diff -N share/locale/messages/en_US.ISO8859-1.src --- share/locale/messages/en_US.ISO8859-1.src 17 May 2008 03:57:50 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,25 +0,0 @@ -# $NetBSD: en_US.ISO8859-1.src,v 1.1 2008/05/17 03:57:50 ginsbach Exp $ -# -# English Language Message Locale for United States -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/msgdef/en_US.ISO8859-1.src,v 1.2 2001/02/08 22:45:44 asmodai Exp $ -# -# Acceptable Affrimative Response Expression (yesexpr) -# NOTE: This must be a valid Extended Regular Expression. -^[yYsS].* -# Acceptable Negative Response Expression (noexpr) -# NOTE: This must be a valid Extended Regular Expression. -^[nN].* -# -# NOTE: The following were removed from the relevant standards: -# The Open Group Base Specifications Issue 6 (XPG6) and -# IEEE Std 1003.1, 2004 Edition (POSIX). -# The current NetBSD implementation still requires a value or blank line. -# -# Acceptable Affrimative Response (yesstr) - -# Acceptable Negative Response (nostr) - -# EOF Index: share/locale/messages/en_US.US-ASCII.src =================================================================== RCS file: share/locale/messages/en_US.US-ASCII.src diff -N share/locale/messages/en_US.US-ASCII.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/messages/en_US.US-ASCII.src 14 Dec 2008 18:55:48 -0000 @@ -0,0 +1,23 @@ +# $NetBSD$ +# +# English Language Message Locale for United States +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# Acceptable Affrimative Response Expression (yesexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[yYsS].* +# Acceptable Negative Response Expression (noexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[nN].* +# +# NOTE: The following were removed from the relevant standards: +# The Open Group Base Specifications Issue 6 (XPG6) and +# IEEE Std 1003.1, 2004 Edition (POSIX). +# The current NetBSD implementation still requires a value or blank line. +# +# Acceptable Affrimative Response (yesstr) + +# Acceptable Negative Response (nostr) + +# EOF Index: share/locale/messages/ja_JP.ISO-2022-JP.src =================================================================== RCS file: share/locale/messages/ja_JP.ISO-2022-JP.src diff -N share/locale/messages/ja_JP.ISO-2022-JP.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/messages/ja_JP.ISO-2022-JP.src 14 Dec 2008 18:55:48 -0000 @@ -0,0 +1,23 @@ +# $NetBSD$ +# +# Japanese Language Message Locale for Japan +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# Acceptable Affrimative Response Expression (yesexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[yY$B#y#Y$O%O(B].* +# Acceptable Negative Response Expression (noexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[nN$B#n#N$$%$(B].* +# +# NOTE: The following were removed from the relevant standards: +# The Open Group Base Specifications Issue 6 (XPG6) and +# IEEE Std 1003.1, 2004 Edition (POSIX). +# The current NetBSD implementation still requires a value or blank line. +# +# Acceptable Affrimative Response (yesstr) + +# Acceptable Negative Response (nostr) + +# EOF Index: share/locale/messages/ja_JP.ct.src =================================================================== RCS file: share/locale/messages/ja_JP.ct.src diff -N share/locale/messages/ja_JP.ct.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/messages/ja_JP.ct.src 14 Dec 2008 18:55:48 -0000 @@ -0,0 +1,23 @@ +# $NetBSD$ +# +# Japanese Language Message Locale for Japan +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# Acceptable Affrimative Response Expression (yesexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[yY$(B#y#Y$O%O(B].* +# Acceptable Negative Response Expression (noexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[nN$(B#n#N$$%$(B].* +# +# NOTE: The following were removed from the relevant standards: +# The Open Group Base Specifications Issue 6 (XPG6) and +# IEEE Std 1003.1, 2004 Edition (POSIX). +# The current NetBSD implementation still requires a value or blank line. +# +# Acceptable Affrimative Response (yesstr) + +# Acceptable Negative Response (nostr) + +# EOF Index: share/locale/messages/sr_ME.ISO8859-2.src =================================================================== RCS file: share/locale/messages/sr_ME.ISO8859-2.src diff -N share/locale/messages/sr_ME.ISO8859-2.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/messages/sr_ME.ISO8859-2.src 14 Dec 2008 18:55:48 -0000 @@ -0,0 +1,25 @@ +# $NetBSD: sr_YU.ISO8859-2.src,v 1.1 2008/05/17 03:57:52 ginsbach Exp $ +# +# Serbian Language Message Locale for +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# From: $FreeBSD: src/share/msgdef/sr_YU.ISO8859-2.src,v 1.1 2002/10/19 13:04:04 ache Exp $ +# +# Acceptable Affrimative Response Expression (yesexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[dDyY].* +# Acceptable Negative Response Expression (noexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[nN].* +# +# NOTE: The following were removed from the relevant standards: +# The Open Group Base Specifications Issue 6 (XPG6) and +# IEEE Std 1003.1, 2004 Edition (POSIX). +# The current NetBSD implementation still requires a value or blank line. +# +# Acceptable Affrimative Response (yesstr) + +# Acceptable Negative Response (nostr) + +# EOF Index: share/locale/messages/sr_ME.ISO8859-5.src =================================================================== RCS file: share/locale/messages/sr_ME.ISO8859-5.src diff -N share/locale/messages/sr_ME.ISO8859-5.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/messages/sr_ME.ISO8859-5.src 14 Dec 2008 18:55:48 -0000 @@ -0,0 +1,25 @@ +# $NetBSD: sr_YU.ISO8859-5.src,v 1.1 2008/05/17 03:57:52 ginsbach Exp $ +# +# Serbian Language Message Locale for +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# From: $FreeBSD: src/share/msgdef/sr_YU.ISO8859-5.src,v 1.1 2002/10/19 13:04:04 ache Exp $ +# +# Acceptable Affrimative Response Expression (yesexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[ԴyY].* +# Acceptable Negative Response Expression (noexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[ݽnN].* +# +# NOTE: The following were removed from the relevant standards: +# The Open Group Base Specifications Issue 6 (XPG6) and +# IEEE Std 1003.1, 2004 Edition (POSIX). +# The current NetBSD implementation still requires a value or blank line. +# +# Acceptable Affrimative Response (yesstr) + +# Acceptable Negative Response (nostr) + +# EOF Index: share/locale/messages/sr_YU.ISO8859-2.src =================================================================== RCS file: share/locale/messages/sr_YU.ISO8859-2.src diff -N share/locale/messages/sr_YU.ISO8859-2.src --- share/locale/messages/sr_YU.ISO8859-2.src 17 May 2008 03:57:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,25 +0,0 @@ -# $NetBSD: sr_YU.ISO8859-2.src,v 1.1 2008/05/17 03:57:52 ginsbach Exp $ -# -# Serbian Language Message Locale for -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/msgdef/sr_YU.ISO8859-2.src,v 1.1 2002/10/19 13:04:04 ache Exp $ -# -# Acceptable Affrimative Response Expression (yesexpr) -# NOTE: This must be a valid Extended Regular Expression. -^[dDyY].* -# Acceptable Negative Response Expression (noexpr) -# NOTE: This must be a valid Extended Regular Expression. -^[nN].* -# -# NOTE: The following were removed from the relevant standards: -# The Open Group Base Specifications Issue 6 (XPG6) and -# IEEE Std 1003.1, 2004 Edition (POSIX). -# The current NetBSD implementation still requires a value or blank line. -# -# Acceptable Affrimative Response (yesstr) - -# Acceptable Negative Response (nostr) - -# EOF Index: share/locale/messages/sr_YU.ISO8859-5.src =================================================================== RCS file: share/locale/messages/sr_YU.ISO8859-5.src diff -N share/locale/messages/sr_YU.ISO8859-5.src --- share/locale/messages/sr_YU.ISO8859-5.src 17 May 2008 03:57:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,25 +0,0 @@ -# $NetBSD: sr_YU.ISO8859-5.src,v 1.1 2008/05/17 03:57:52 ginsbach Exp $ -# -# Serbian Language Message Locale for -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/msgdef/sr_YU.ISO8859-5.src,v 1.1 2002/10/19 13:04:04 ache Exp $ -# -# Acceptable Affrimative Response Expression (yesexpr) -# NOTE: This must be a valid Extended Regular Expression. -^[ԴyY].* -# Acceptable Negative Response Expression (noexpr) -# NOTE: This must be a valid Extended Regular Expression. -^[ݽnN].* -# -# NOTE: The following were removed from the relevant standards: -# The Open Group Base Specifications Issue 6 (XPG6) and -# IEEE Std 1003.1, 2004 Edition (POSIX). -# The current NetBSD implementation still requires a value or blank line. -# -# Acceptable Affrimative Response (yesstr) - -# Acceptable Negative Response (nostr) - -# EOF Index: share/locale/messages/zh_CN.GB18030.src =================================================================== RCS file: share/locale/messages/zh_CN.GB18030.src diff -N share/locale/messages/zh_CN.GB18030.src --- share/locale/messages/zh_CN.GB18030.src 17 May 2008 03:57:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,25 +0,0 @@ -# $NetBSD: zh_CN.GB18030.src,v 1.1 2008/05/17 03:57:52 ginsbach Exp $ -# -# Chinese Language Message Locale for China -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/msgdef/zh_CN.GB18030.src,v 1.1 2003/07/29 16:12:56 ache Exp $ -# -# Acceptable Affrimative Response Expression (yesexpr) -# NOTE: This must be a valid Extended Regular Expression. -^[yY].* -# Acceptable Negative Response Expression (noexpr) -# NOTE: This must be a valid Extended Regular Expression. -^[nNβ].* -# -# NOTE: The following were removed from the relevant standards: -# The Open Group Base Specifications Issue 6 (XPG6) and -# IEEE Std 1003.1, 2004 Edition (POSIX). -# The current NetBSD implementation still requires a value or blank line. -# -# Acceptable Affrimative Response (yesstr) - -# Acceptable Negative Response (nostr) - -# EOF Index: share/locale/messages/zh_TW.eucTW.src =================================================================== RCS file: share/locale/messages/zh_TW.eucTW.src diff -N share/locale/messages/zh_TW.eucTW.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/messages/zh_TW.eucTW.src 14 Dec 2008 18:55:49 -0000 @@ -0,0 +1,25 @@ +# $NetBSD: zh_TW.Big5.src,v 1.1 2008/05/17 03:57:52 ginsbach Exp $ +# +# Chinese Language Message Locale for Taiwan, Province of China +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# From: $FreeBSD: src/share/msgdef/zh_TW.Big5.src,v 1.1 2001/02/17 18:45:08 keith Exp $ +# +# Acceptable Affrimative Response Expression (yesexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[yY].* +# Acceptable Negative Response Expression (noexpr) +# NOTE: This must be a valid Extended Regular Expression. +^[nN].* +# +# NOTE: The following were removed from the relevant standards: +# The Open Group Base Specifications Issue 6 (XPG6) and +# IEEE Std 1003.1, 2004 Edition (POSIX). +# The current NetBSD implementation still requires a value or blank line. +# +# Acceptable Affrimative Response (yesstr) + +# Acceptable Negative Response (nostr) + +# EOF Index: share/locale/monetary/Makefile =================================================================== RCS file: /cvsroot/src/share/locale/monetary/Makefile,v retrieving revision 1.4 diff -u -r1.4 Makefile --- share/locale/monetary/Makefile 4 Jun 2008 13:19:31 -0000 1.4 +++ share/locale/monetary/Makefile 14 Dec 2008 18:55:49 -0000 @@ -1,268 +1,68 @@ -# $NetBSD: Makefile,v 1.4 2008/06/04 13:19:31 ginsbach Exp $ +# $NetBSD$ -NOMAN= # defined +NOMAN= # defined # pull LOCALEDIR and other declarations .include -FILESOWN= ${LOCALEOWN} -FILESGRP= ${LOCALEGRP} -FILESMODE= ${LOCALEMODE} +LOCALEFILE= LC_MONETARY -LOCALES += af_ZA.ISO8859-1 - LOCALESRC_af_ZA.ISO8859-1 = af_ZA.ISO8859-1 +LOCALESRC_af_ZA.ISO8859-15= af_ZA.ISO8859-1 +LOCALESRC_ca_ES.ISO8859-15= ca_ES.ISO8859-1 +LOCALESRC_da_DK.ISO8859-15= da_DK.ISO8859-1 +LOCALESRC_de_AT.ISO8859-15= de_AT.ISO8859-1 +LOCALESRC_de_CH.ISO8859-15= de_CH.ISO8859-1 +LOCALESRC_de_DE.ISO8859-15= de_DE.ISO8859-1 +LOCALESRC_en_AU.ISO8859-15= en_AU.ISO8859-1 +LOCALESRC_en_CA.ISO8859-15= en_CA.ISO8859-1 +LOCALESRC_en_GB.ISO8859-15= en_GB.ISO8859-1 +LOCALESRC_en_NZ.ISO8859-15= en_NZ.ISO8859-1 +LOCALESRC_en_US.ISO8859-1= en_US.US-ASCII +LOCALESRC_en_US.ISO8859-15= en_US.US-ASCII +LOCALESRC_en_US.UTF-8= en_US.US-ASCII +LOCALESRC_es_ES.ISO8859-15= es_ES.ISO8859-1 +LOCALESRC_eu_ES.ISO8859-1= es_ES.ISO8859-1 +LOCALESRC_eu_ES.ISO8859-15= es_ES.ISO8859-1 +LOCALESRC_fi_FI.ISO8859-15= fi_FI.ISO8859-1 +LOCALESRC_fr_BE.ISO8859-15= fr_BE.ISO8859-1 +LOCALESRC_fr_CA.ISO8859-15= fr_CA.ISO8859-1 +LOCALESRC_fr_CH.ISO8859-1= de_CH.ISO8859-1 +LOCALESRC_fr_CH.ISO8859-15= de_CH.ISO8859-1 +LOCALESRC_fr_FR.ISO8859-15= fr_FR.ISO8859-1 +LOCALESRC_is_IS.ISO8859-15= is_IS.ISO8859-1 +LOCALESRC_it_CH.ISO8859-1= de_CH.ISO8859-1 +LOCALESRC_it_CH.ISO8859-15= de_CH.ISO8859-1 +LOCALESRC_it_IT.ISO8859-15= it_IT.ISO8859-1 +LOCALESRC_ja_JP.ISO-2022-JP-2= ja_JP.ISO-2022-JP +LOCALESRC_ja_JP.SJIS= ja_JP.eucJP +LOCALESRC_ja_JP.ct= ja_JP.ISO-2022-JP +LOCALESRC_lt_LT.ISO8859-4= lt_LT.ISO8859-13 +LOCALESRC_nl_BE.ISO8859-15= nl_BE.ISO8859-1 +LOCALESRC_nl_NL.ISO8859-15= nl_NL.ISO8859-1 +LOCALESRC_nn_NO.ISO8859-15= no_NO.ISO8859-1 +LOCALESRC_nn_NO.ISO8859-1= no_NO.ISO8859-1 +LOCALESRC_no_NO.ISO8859-15= no_NO.ISO8859-1 +LOCALESRC_pt_PT.ISO8859-15= pt_PT.ISO8859-1 +LOCALESRC_ru_BY.CP1251= be_BY.CP1251 +LOCALESRC_sv_SE.ISO8859-15= sv_SE.ISO8859-1 +LOCALESRC_sr_ME.ISO8859-5= sr_ME.ISO8859-2 +LOCALESRC_sr_RS.ISO8859-5= sr_RS.ISO8859-2 +LOCALESRC_zh_CN.GB18030= zh_CN.eucCN +LOCALESRC_zh_TW.eucTW= zh_TW.Big5 -LOCALES += am_ET.UTF-8 - LOCALESRC_am_ET.UTF-8 = am_ET.UTF-8 +.include"${.CURDIR}/../Makefile.locale" -LOCALES += be_BY.CP1131 - LOCALESRC_be_BY.CP1131 = be_BY.CP1131 +all: ${LOCALES:S/$/.out/g} +realall: ${LOCALES:S/$/.out/g} -LOCALES += be_BY.CP1251 - LOCALESRC_be_BY.CP1251 = be_BY.CP1251 - -LOCALES += be_BY.ISO8859-5 - LOCALESRC_be_BY.ISO8859-5 = be_BY.ISO8859-5 - -LOCALES += be_BY.UTF-8 - LOCALESRC_be_BY.UTF-8 = be_BY.UTF-8 - -LOCALES += bg_BG.CP1251 - LOCALESRC_bg_BG.CP1251 = bg_BG.CP1251 - -LOCALES += bg_BG.UTF-8 - LOCALESRC_bg_BG.UTF-8 = bg_BG.UTF-8 - -LOCALES += ca_ES.ISO8859-1 - LOCALESRC_ca_ES.ISO8859-1 = ca_ES.ISO8859-1 - -LOCALES += cs_CZ.ISO8859-2 - LOCALESRC_cs_CZ.ISO8859-2 = cs_CZ.ISO8859-2 - -LOCALES += cs_CZ.UTF-8 - LOCALESRC_cs_CZ.UTF-8 = cs_CZ.UTF-8 - -LOCALES += da_DK.ISO8859-1 - LOCALESRC_da_DK.ISO8859-1 = da_DK.ISO8859-1 - -LOCALES += de_AT.ISO8859-1 - LOCALESRC_de_AT.ISO8859-1 = de_AT.ISO8859-1 - -LOCALES += de_CH.ISO8859-1 - LOCALESRC_de_CH.ISO8859-1 = de_CH.ISO8859-1 - -LOCALES += de_DE.ISO8859-1 - LOCALESRC_de_DE.ISO8859-1 = de_DE.ISO8859-1 - -LOCALES += el_GR.ISO8859-7 - LOCALESRC_el_GR.ISO8859-7 = el_GR.ISO8859-7 - -LOCALES += en_AU.ISO8859-1 - LOCALESRC_en_AU.ISO8859-1 = en_AU.ISO8859-1 - -LOCALES += en_CA.ISO8859-1 - LOCALESRC_en_CA.ISO8859-1 = en_CA.ISO8859-1 - -LOCALES += en_GB.ISO8859-1 - LOCALESRC_en_GB.ISO8859-1 = en_GB.ISO8859-1 - -LOCALES += en_GB.UTF-8 - LOCALESRC_en_GB.UTF-8 = en_GB.UTF-8 - -LOCALES += en_IE.UTF-8 - LOCALESRC_en_IE.UTF-8 = en_IE.UTF-8 - -LOCALES += en_NZ.ISO8859-1 - LOCALESRC_en_NZ.ISO8859-1 = en_NZ.ISO8859-1 - -LOCALES += en_US.ISO8859-1 - LOCALESRC_en_US.ISO8859-1 = en_US.ISO8859-1 - -LOCALES += es_ES.ISO8859-1 - LOCALESRC_es_ES.ISO8859-1 = es_ES.ISO8859-1 - -LOCALES += et_EE.ISO8859-15 - LOCALESRC_et_EE.ISO8859-15 = et_EE.ISO8859-15 - -LOCALES += fi_FI.ISO8859-1 - LOCALESRC_fi_FI.ISO8859-1 = fi_FI.ISO8859-1 - -LOCALES += fr_BE.ISO8859-1 - LOCALESRC_fr_BE.ISO8859-1 = fr_BE.ISO8859-1 - -LOCALES += fr_CA.ISO8859-1 - LOCALESRC_fr_CA.ISO8859-1 = fr_CA.ISO8859-1 - -LOCALES += fr_FR.ISO8859-1 - LOCALESRC_fr_FR.ISO8859-1 = fr_FR.ISO8859-1 - -LOCALES += he_IL.UTF-8 - LOCALESRC_he_IL.UTF-8 = he_IL.UTF-8 - -# XXX codeset not yet supported by LC_TYPE and iconv(3) -#LOCALES += hi_IN.ISCII-DEV -# LOCALESRC_hi_IN.ISCII-DEV = hi_IN.ISCII-DEV - -LOCALES += hr_HR.ISO8859-2 - LOCALESRC_hr_HR.ISO8859-2 = hr_HR.ISO8859-2 - -LOCALES += hu_HU.ISO8859-2 - LOCALESRC_hu_HU.ISO8859-2 = hu_HU.ISO8859-2 - -LOCALES += hy_AM.ARMSCII-8 - LOCALESRC_hy_AM.ARMSCII-8 = hy_AM.ARMSCII-8 - -LOCALES += hy_AM.UTF-8 - LOCALESRC_hy_AM.UTF-8 = hy_AM.UTF-8 - -LOCALES += is_IS.ISO8859-1 - LOCALESRC_is_IS.ISO8859-1 = is_IS.ISO8859-1 - -LOCALES += it_IT.ISO8859-1 - LOCALESRC_it_IT.ISO8859-1 = it_IT.ISO8859-1 - -LOCALES += ja_JP.UTF-8 - LOCALESRC_ja_JP.UTF-8 = ja_JP.UTF-8 - -LOCALES += ja_JP.eucJP - LOCALESRC_ja_JP.eucJP = ja_JP.eucJP - -LOCALES += kk_KZ.PT154 - LOCALESRC_kk_KZ.PT154 = kk_KZ.PT154 - -LOCALES += kk_KZ.UTF-8 - LOCALESRC_kk_KZ.UTF-8 = kk_KZ.UTF-8 - -LOCALES += ko_KR.UTF-8 - LOCALESRC_ko_KR.UTF-8 = ko_KR.UTF-8 - -LOCALES += ko_KR.eucKR - LOCALESRC_ko_KR.eucKR = ko_KR.eucKR - -LOCALES += lt_LT.ISO8859-13 - LOCALESRC_lt_LT.ISO8859-13 = lt_LT.ISO8859-13 - -LOCALES += mn_MN.UTF-8 - LOCALESRC_mn_MN.UTF-8 = mn_MN.UTF-8 - -LOCALES += nl_BE.ISO8859-1 - LOCALESRC_nl_BE.ISO8859-1 = nl_BE.ISO8859-1 - -LOCALES += nl_NL.ISO8859-1 - LOCALESRC_nl_NL.ISO8859-1 = nl_NL.ISO8859-1 - -LOCALES += no_NO.ISO8859-1 - LOCALESRC_no_NO.ISO8859-1 = no_NO.ISO8859-1 - -LOCALES += pl_PL.ISO8859-2 - LOCALESRC_pl_PL.ISO8859-2 = pl_PL.ISO8859-2 - -LOCALES += pl_PL.UTF-8 - LOCALESRC_pl_PL.UTF-8 = pl_PL.UTF-8 - -LOCALES += pt_BR.ISO8859-1 - LOCALESRC_pt_BR.ISO8859-1 = pt_BR.ISO8859-1 - -LOCALES += pt_PT.ISO8859-1 - LOCALESRC_pt_PT.ISO8859-1 = pt_PT.ISO8859-1 - -LOCALES += ro_RO.ISO8859-2 - LOCALESRC_ro_RO.ISO8859-2 = ro_RO.ISO8859-2 - -LOCALES += ru_RU.CP1251 - LOCALESRC_ru_RU.CP1251 = ru_RU.CP1251 - -LOCALES += ru_RU.CP866 - LOCALESRC_ru_RU.CP866 = ru_RU.CP866 - -LOCALES += ru_RU.ISO8859-5 - LOCALESRC_ru_RU.ISO8859-5 = ru_RU.ISO8859-5 - -LOCALES += ru_RU.KOI8-R - LOCALESRC_ru_RU.KOI8-R = ru_RU.KOI8-R - -LOCALES += ru_RU.UTF-8 - LOCALESRC_ru_RU.UTF-8 = ru_RU.UTF-8 - -LOCALES += sk_SK.ISO8859-2 - LOCALESRC_sk_SK.ISO8859-2 = sk_SK.ISO8859-2 - -LOCALES += sl_SI.ISO8859-2 - LOCALESRC_sl_SI.ISO8859-2 = sl_SI.ISO8859-2 - -LOCALES += sr_YU.ISO8859-2 - LOCALESRC_sr_YU.ISO8859-2 = sr_YU.ISO8859-2 - -LOCALES += sr_YU.ISO8859-5 - LOCALESRC_sr_YU.ISO8859-5 = sr_YU.ISO8859-5 - -LOCALES += sr_YU.UTF-8 - LOCALESRC_sr_YU.UTF-8 = sr_YU.UTF-8 - -LOCALES += sv_SE.ISO8859-1 - LOCALESRC_sv_SE.ISO8859-1 = sv_SE.ISO8859-1 - -LOCALES += tr_TR.ISO8859-9 - LOCALESRC_tr_TR.ISO8859-9 = tr_TR.ISO8859-9 - -LOCALES += uk_UA.CP1251 - LOCALESRC_uk_UA.CP1251 = uk_UA.CP1251 - -LOCALES += uk_UA.ISO8859-5 - LOCALESRC_uk_UA.ISO8859-5 = uk_UA.ISO8859-5 - -LOCALES += uk_UA.KOI8-U - LOCALESRC_uk_UA.KOI8-U = uk_UA.KOI8-U - -LOCALES += uk_UA.UTF-8 - LOCALESRC_uk_UA.UTF-8 = uk_UA.UTF-8 - -LOCALES += zh_CN.GB18030 - LOCALESRC_zh_CN.GB18030 = zh_CN.GB18030 - -LOCALES += zh_CN.UTF-8 - LOCALESRC_zh_CN.UTF-8 = zh_CN.UTF-8 - -LOCALES += zh_CN.eucCN - LOCALESRC_zh_CN.eucCN = zh_CN.eucCN - -LOCALES += zh_HK.UTF-8 - LOCALESRC_zh_HK.UTF-8 = zh_HK.UTF-8 - -LOCALES += zh_TW.Big5 - LOCALESRC_zh_TW.Big5 = zh_TW.Big5 - -all: ${LOCALES:S/$/.out/g} -realall: ${LOCALES:S/$/.out/g} - -.for locale in ${LOCALES} -LOCALESRCS+= ${LOCALESRC_${locale}} -.endfor -CLEANFILES+= ${LOCALES:S/$/.out/g} - -# TODO: more use of symlinks? FILES= ${LOCALES:S/$/.out/g} -.for locale in ${LOCALES} -FILESDIR_${locale}.out= ${LOCALEDIR}/${locale} -FILESNAME_${locale}.out= LC_MONETARY -.endfor +CLEANFILES+= ${LOCALES:S/$/.out/g} -# dependencies .for locale in ${LOCALES} ${locale}.out: ${LOCALESRC_${locale}}.src ${_MKTARGET_CREATE} - ${TOOL_SED} -e '/^#/d' ${.CURDIR}/${LOCALESRC_${locale}}.src > ${.TARGET} + ${TOOL_MKLOCALE} -t monetary -o ${.TARGET} \ + < ${.CURDIR}/${LOCALESRC_${locale}}.src .endfor -.SUFFIXES: .src .out -.src.out: - ${_MKTARGET_CREATE} - ${TOOL_SED} -e '/^#/d' ${.IMPSRC} > ${.TARGET} - -# does not work -#depend: -# ${MKDEP} -a ${MKDEPFLAGS} \ -# ${CPPFLAGS:M-[ID]*} ${CPPFLAGS} \ -# ${LOCALESRC:S/$/.src/g:S/^/${.CURDIR}\//g} - .include Index: share/locale/monetary/af_ZA.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/af_ZA.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 af_ZA.ISO8859-1.src --- share/locale/monetary/af_ZA.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/af_ZA.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/am_ET.UTF-8.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/am_ET.UTF-8.src,v retrieving revision 1.1 diff -u -r1.1 am_ET.UTF-8.src --- share/locale/monetary/am_ET.UTF-8.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/am_ET.UTF-8.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/be_BY.CP1131.src =================================================================== RCS file: share/locale/monetary/be_BY.CP1131.src diff -N share/locale/monetary/be_BY.CP1131.src --- share/locale/monetary/be_BY.CP1131.src 17 May 2008 04:05:51 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: be_BY.CP1131.src,v 1.1 2008/05/17 04:05:51 ginsbach Exp $ -# -# Belarusian Language Monetary Locale for Belarus -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/be_BY.CP1131.src,v 1.1 2003/12/20 11:18:42 ache Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -BYR -# -# Currency Symbol (currency_symbol) -# -. -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/be_BY.CP1251.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/be_BY.CP1251.src,v retrieving revision 1.1 diff -u -r1.1 be_BY.CP1251.src --- share/locale/monetary/be_BY.CP1251.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/be_BY.CP1251.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/be_BY.ISO8859-5.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/be_BY.ISO8859-5.src,v retrieving revision 1.1 diff -u -r1.1 be_BY.ISO8859-5.src --- share/locale/monetary/be_BY.ISO8859-5.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/be_BY.ISO8859-5.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/be_BY.UTF-8.src =================================================================== RCS file: share/locale/monetary/be_BY.UTF-8.src diff -N share/locale/monetary/be_BY.UTF-8.src --- share/locale/monetary/be_BY.UTF-8.src 17 May 2008 04:05:51 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: be_BY.UTF-8.src,v 1.1 2008/05/17 04:05:51 ginsbach Exp $ -# -# Belarusian Language Monetary Locale for Belarus -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/be_BY.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -BYR -# -# Currency Symbol (currency_symbol) -# -руб. -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/bg_BG.CP1251.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/bg_BG.CP1251.src,v retrieving revision 1.1 diff -u -r1.1 bg_BG.CP1251.src --- share/locale/monetary/bg_BG.CP1251.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/bg_BG.CP1251.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/bg_BG.UTF-8.src =================================================================== RCS file: share/locale/monetary/bg_BG.UTF-8.src diff -N share/locale/monetary/bg_BG.UTF-8.src --- share/locale/monetary/bg_BG.UTF-8.src 17 May 2008 04:05:51 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: bg_BG.UTF-8.src,v 1.1 2008/05/17 04:05:51 ginsbach Exp $ -# -# Bulgarian Language Monetary Locale for Bulgaria -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/bg_BG.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -BGN -# -# Currency Symbol (currency_symbol) -# -лв. -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/ca_ES.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/ca_ES.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 ca_ES.ISO8859-1.src --- share/locale/monetary/ca_ES.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/ca_ES.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 0 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/cs_CZ.ISO8859-2.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/cs_CZ.ISO8859-2.src,v retrieving revision 1.1 diff -u -r1.1 cs_CZ.ISO8859-2.src --- share/locale/monetary/cs_CZ.ISO8859-2.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/cs_CZ.ISO8859-2.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/cs_CZ.UTF-8.src =================================================================== RCS file: share/locale/monetary/cs_CZ.UTF-8.src diff -N share/locale/monetary/cs_CZ.UTF-8.src --- share/locale/monetary/cs_CZ.UTF-8.src 17 May 2008 04:05:51 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: cs_CZ.UTF-8.src,v 1.1 2008/05/17 04:05:51 ginsbach Exp $ -# -# Czech Language Monetary Locale for Czech Republic -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/cs_CZ.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -CZK -# -# Currency Symbol (currency_symbol) -# -Kč -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/da_DK.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/da_DK.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 da_DK.ISO8859-1.src --- share/locale/monetary/da_DK.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/da_DK.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 2 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 4 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 2 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/de_AT.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/de_AT.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 de_AT.ISO8859-1.src --- share/locale/monetary/de_AT.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/de_AT.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/de_CH.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/de_CH.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 de_CH.ISO8859-1.src --- share/locale/monetary/de_CH.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/de_CH.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 4 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/de_DE.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/de_DE.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 de_DE.ISO8859-1.src --- share/locale/monetary/de_DE.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/de_DE.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/el_GR.ISO8859-7.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/el_GR.ISO8859-7.src,v retrieving revision 1.1 diff -u -r1.1 el_GR.ISO8859-7.src --- share/locale/monetary/el_GR.ISO8859-7.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/el_GR.ISO8859-7.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/en_AU.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/en_AU.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 en_AU.ISO8859-1.src --- share/locale/monetary/en_AU.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/en_AU.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/en_CA.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/en_CA.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 en_CA.ISO8859-1.src --- share/locale/monetary/en_CA.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/en_CA.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/en_GB.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/en_GB.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 en_GB.ISO8859-1.src --- share/locale/monetary/en_GB.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/en_GB.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/en_GB.UTF-8.src =================================================================== RCS file: share/locale/monetary/en_GB.UTF-8.src diff -N share/locale/monetary/en_GB.UTF-8.src --- share/locale/monetary/en_GB.UTF-8.src 17 May 2008 04:05:51 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: en_GB.UTF-8.src,v 1.1 2008/05/17 04:05:51 ginsbach Exp $ -# -# English Language Monetary Locale for United Kingdom -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/en_GB.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -GBP -# -# Currency Symbol (currency_symbol) -# -£ -# -# Monetary Decimal Point (mon_decimal_point) -# -. -# -# Monetary Thousands Separator (mon_thousands_sep) -# -, -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/en_IE.UTF-8.src =================================================================== RCS file: share/locale/monetary/en_IE.UTF-8.src diff -N share/locale/monetary/en_IE.UTF-8.src --- share/locale/monetary/en_IE.UTF-8.src 17 May 2008 04:05:51 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: en_IE.UTF-8.src,v 1.1 2008/05/17 04:05:51 ginsbach Exp $ -# -# English Language Monetary Locale for Ireland -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/en_IE.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -EUR -# -# Currency Symbol (currency_symbol) -# -€ -# -# Monetary Decimal Point (mon_decimal_point) -# -. -# -# Monetary Thousands Separator (mon_thousands_sep) -# -, -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/en_NZ.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/en_NZ.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 en_NZ.ISO8859-1.src --- share/locale/monetary/en_NZ.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/en_NZ.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/en_US.ISO8859-1.src =================================================================== RCS file: share/locale/monetary/en_US.ISO8859-1.src diff -N share/locale/monetary/en_US.ISO8859-1.src --- share/locale/monetary/en_US.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: en_US.ISO8859-1.src,v 1.1 2008/05/17 04:05:51 ginsbach Exp $ -# -# English Language Monetary Locale for United States -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/en_US.ISO8859-1.src,v 1.7 2001/02/19 18:55:34 phantom Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -USD -# -# Currency Symbol (currency_symbol) -# -$ -# -# Monetary Decimal Point (mon_decimal_point) -# -. -# -# Monetary Thousands Separator (mon_thousands_sep) -# -, -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/en_US.US-ASCII.src =================================================================== RCS file: share/locale/monetary/en_US.US-ASCII.src diff -N share/locale/monetary/en_US.US-ASCII.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/monetary/en_US.US-ASCII.src 14 Dec 2008 18:55:49 -0000 @@ -0,0 +1,109 @@ +# $NetBSD: en_US.ISO8859-1.src,v 1.1 2008/05/17 04:05:51 ginsbach Exp $ +# +# English Language Monetary Locale for United States +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# From: $FreeBSD: src/share/monetdef/en_US.ISO8859-1.src,v 1.7 2001/02/19 18:55:34 phantom Exp $ +# +# International Currency Symbol (int_curr_symbol) +# NOTE: Last character is always SPACE +# +USD +# +# Currency Symbol (currency_symbol) +# +$ +# +# Monetary Decimal Point (mon_decimal_point) +# +. +# +# Monetary Thousands Separator (mon_thousands_sep) +# +, +# +# Monetary Grouping Sequence (mon_grouping) +# A sequence of integers separated by semi-colons ';'. +# +3;3 +# +# Positive Sign (positive_sign) +# + +# +# Negative Sign (negative_sign) +# +- +# +# International Fractional Digits (int_frac_digits) +# +2 +# +# Fractional Digits (frac_digits) +# +2 +# +# Currency Symbol Precedes Positive Value (p_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of Currency Symbol, Sign, and Positive Value +# by a Space (p_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# Currency Symbol Precedes Negative Value (n_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# Positive Sign Position (p_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# Negative Sign Position (n_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of International Currency Symbol, Sign, and +# Positive Value (int_p_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of International Currency Symbol, Sign, and +# Negative Value (int_n_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# International Positive Sign Position (int_p_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# International Negative Sign Position (int_n_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# EOF Index: share/locale/monetary/es_ES.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/es_ES.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 es_ES.ISO8859-1.src --- share/locale/monetary/es_ES.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/es_ES.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/et_EE.ISO8859-15.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/et_EE.ISO8859-15.src,v retrieving revision 1.1 diff -u -r1.1 et_EE.ISO8859-15.src --- share/locale/monetary/et_EE.ISO8859-15.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/et_EE.ISO8859-15.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/fi_FI.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/fi_FI.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 fi_FI.ISO8859-1.src --- share/locale/monetary/fi_FI.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/fi_FI.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 2 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 2 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 2 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/fr_BE.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/fr_BE.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 fr_BE.ISO8859-1.src --- share/locale/monetary/fr_BE.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/fr_BE.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/fr_CA.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/fr_CA.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 fr_CA.ISO8859-1.src --- share/locale/monetary/fr_CA.ISO8859-1.src 17 May 2008 04:05:51 -0000 1.1 +++ share/locale/monetary/fr_CA.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 2 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/fr_FR.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/fr_FR.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 fr_FR.ISO8859-1.src --- share/locale/monetary/fr_FR.ISO8859-1.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/fr_FR.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 2 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/he_IL.UTF-8.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/he_IL.UTF-8.src,v retrieving revision 1.1 diff -u -r1.1 he_IL.UTF-8.src --- share/locale/monetary/he_IL.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/he_IL.UTF-8.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/hi_IN.ISCII-DEV.src =================================================================== RCS file: share/locale/monetary/hi_IN.ISCII-DEV.src diff -N share/locale/monetary/hi_IN.ISCII-DEV.src --- share/locale/monetary/hi_IN.ISCII-DEV.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: hi_IN.ISCII-DEV.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Hindi Language Monetary Locale for India -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/hi_IN.ISCII-DEV.src,v 1.1 2001/11/28 07:23:08 ache Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -INR -# -# Currency Symbol (currency_symbol) -# -Ȭ -# -# Monetary Decimal Point (mon_decimal_point) -# -. -# -# Monetary Thousands Separator (mon_thousands_sep) -# -, -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;2;0 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/hr_HR.ISO8859-2.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/hr_HR.ISO8859-2.src,v retrieving revision 1.1 diff -u -r1.1 hr_HR.ISO8859-2.src --- share/locale/monetary/hr_HR.ISO8859-2.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/hr_HR.ISO8859-2.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 0 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/hu_HU.ISO8859-2.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/hu_HU.ISO8859-2.src,v retrieving revision 1.1 diff -u -r1.1 hu_HU.ISO8859-2.src --- share/locale/monetary/hu_HU.ISO8859-2.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/hu_HU.ISO8859-2.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 2 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 4 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 2 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/hy_AM.ARMSCII-8.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/hy_AM.ARMSCII-8.src,v retrieving revision 1.1 diff -u -r1.1 hy_AM.ARMSCII-8.src --- share/locale/monetary/hy_AM.ARMSCII-8.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/hy_AM.ARMSCII-8.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/hy_AM.UTF-8.src =================================================================== RCS file: share/locale/monetary/hy_AM.UTF-8.src diff -N share/locale/monetary/hy_AM.UTF-8.src --- share/locale/monetary/hy_AM.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: hy_AM.UTF-8.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Armenian Language Monetary Locale for Armenia -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/hy_AM.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -AMD -# -# Currency Symbol (currency_symbol) -# -ԴՐ -# -# Monetary Decimal Point (mon_decimal_point) -# -. -# -# Monetary Thousands Separator (mon_thousands_sep) -# -, -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/is_IS.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/is_IS.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 is_IS.ISO8859-1.src --- share/locale/monetary/is_IS.ISO8859-1.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/is_IS.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/it_IT.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/it_IT.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 it_IT.ISO8859-1.src --- share/locale/monetary/it_IT.ISO8859-1.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/it_IT.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 0 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/ja_JP.ISO-2022-JP.src =================================================================== RCS file: share/locale/monetary/ja_JP.ISO-2022-JP.src diff -N share/locale/monetary/ja_JP.ISO-2022-JP.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/monetary/ja_JP.ISO-2022-JP.src 14 Dec 2008 18:55:49 -0000 @@ -0,0 +1,109 @@ +# $NetBSD: ja_JP.eucJP.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ +# +# Japanese Language Monetary Locale for Japan +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# From: $FreeBSD: src/share/monetdef/ja_JP.eucJP.src,v 1.2 2001/02/19 18:55:34 phantom Exp $ +# +# International Currency Symbol (int_curr_symbol) +# NOTE: Last character is always SPACE +# +JPY +# +# Currency Symbol (currency_symbol) +# +(J\(B +# +# Monetary Decimal Point (mon_decimal_point) +# +. +# +# Monetary Thousands Separator (mon_thousands_sep) +# +, +# +# Monetary Grouping Sequence (mon_grouping) +# A sequence of integers separated by semi-colons ';'. +# +3;3 +# +# Positive Sign (positive_sign) +# + +# +# Negative Sign (negative_sign) +# +- +# +# International Fractional Digits (int_frac_digits) +# +0 +# +# Fractional Digits (frac_digits) +# +0 +# +# Currency Symbol Precedes Positive Value (p_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of Currency Symbol, Sign, and Positive Value +# by a Space (p_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# Currency Symbol Precedes Negative Value (n_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# Positive Sign Position (p_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# Negative Sign Position (n_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +4 +# +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of International Currency Symbol, Sign, and +# Positive Value (int_p_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of International Currency Symbol, Sign, and +# Negative Value (int_n_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# International Positive Sign Position (int_p_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# International Negative Sign Position (int_n_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +4 +# EOF Index: share/locale/monetary/ja_JP.UTF-8.src =================================================================== RCS file: share/locale/monetary/ja_JP.UTF-8.src diff -N share/locale/monetary/ja_JP.UTF-8.src --- share/locale/monetary/ja_JP.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: ja_JP.UTF-8.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Japanese Language Monetary Locale for Japan -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/ja_JP.UTF-8.src,v 1.1 2004/03/29 01:29:13 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -JPY -# -# Currency Symbol (currency_symbol) -# -¥ -# -# Monetary Decimal Point (mon_decimal_point) -# -. -# -# Monetary Thousands Separator (mon_thousands_sep) -# -, -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -0 -# -# Fractional Digits (frac_digits) -# -0 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# EOF Index: share/locale/monetary/ja_JP.eucJP.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/ja_JP.eucJP.src,v retrieving revision 1.1 diff -u -r1.1 ja_JP.eucJP.src --- share/locale/monetary/ja_JP.eucJP.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/ja_JP.eucJP.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 0 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 4 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/kk_KZ.PT154.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/kk_KZ.PT154.src,v retrieving revision 1.1 diff -u -r1.1 kk_KZ.PT154.src --- share/locale/monetary/kk_KZ.PT154.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/kk_KZ.PT154.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/kk_KZ.UTF-8.src =================================================================== RCS file: share/locale/monetary/kk_KZ.UTF-8.src diff -N share/locale/monetary/kk_KZ.UTF-8.src --- share/locale/monetary/kk_KZ.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: kk_KZ.UTF-8.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Kazakh Language Monetary Locale for Kazakhstan -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/kk_KZ.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -KZT -# -# Currency Symbol (currency_symbol) -# -тг. -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/ko_KR.UTF-8.src =================================================================== RCS file: share/locale/monetary/ko_KR.UTF-8.src diff -N share/locale/monetary/ko_KR.UTF-8.src --- share/locale/monetary/ko_KR.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: ko_KR.UTF-8.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Korean Language Monetary Locale for Korea, Republic of -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/ko_KR.UTF-8.src,v 1.1 2004/03/29 01:53:31 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -KRW -# -# Currency Symbol (currency_symbol) -# -₩ -# -# Monetary Decimal Point (mon_decimal_point) -# -. -# -# Monetary Thousands Separator (mon_thousands_sep) -# -, -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -0 -# -# Fractional Digits (frac_digits) -# -0 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# EOF Index: share/locale/monetary/ko_KR.eucKR.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/ko_KR.eucKR.src,v retrieving revision 1.1 diff -u -r1.1 ko_KR.eucKR.src --- share/locale/monetary/ko_KR.eucKR.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/ko_KR.eucKR.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 0 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 4 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/lt_LT.ISO8859-13.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/lt_LT.ISO8859-13.src,v retrieving revision 1.1 diff -u -r1.1 lt_LT.ISO8859-13.src --- share/locale/monetary/lt_LT.ISO8859-13.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/lt_LT.ISO8859-13.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/mn_MN.UTF-8.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/mn_MN.UTF-8.src,v retrieving revision 1.1 diff -u -r1.1 mn_MN.UTF-8.src --- share/locale/monetary/mn_MN.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/mn_MN.UTF-8.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/nl_BE.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/nl_BE.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 nl_BE.ISO8859-1.src --- share/locale/monetary/nl_BE.ISO8859-1.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/nl_BE.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/nl_NL.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/nl_NL.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 nl_NL.ISO8859-1.src --- share/locale/monetary/nl_NL.ISO8859-1.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/nl_NL.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 2 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/no_NO.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/no_NO.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 no_NO.ISO8859-1.src --- share/locale/monetary/no_NO.ISO8859-1.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/no_NO.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 4 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/pl_PL.ISO8859-2.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/pl_PL.ISO8859-2.src,v retrieving revision 1.1 diff -u -r1.1 pl_PL.ISO8859-2.src --- share/locale/monetary/pl_PL.ISO8859-2.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/pl_PL.ISO8859-2.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 2 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 4 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 2 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/pl_PL.UTF-8.src =================================================================== RCS file: share/locale/monetary/pl_PL.UTF-8.src diff -N share/locale/monetary/pl_PL.UTF-8.src --- share/locale/monetary/pl_PL.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: pl_PL.UTF-8.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Polish Language Monetary Locale for Poland -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/pl_PL.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -PLN -# -# Currency Symbol (currency_symbol) -# -zł -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -2 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -2 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -2 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -2 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# EOF Index: share/locale/monetary/pt_BR.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/pt_BR.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 pt_BR.ISO8859-1.src --- share/locale/monetary/pt_BR.ISO8859-1.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/pt_BR.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/pt_PT.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/pt_PT.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 pt_PT.ISO8859-1.src --- share/locale/monetary/pt_PT.ISO8859-1.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/pt_PT.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/ro_RO.ISO8859-2.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/ro_RO.ISO8859-2.src,v retrieving revision 1.1 diff -u -r1.1 ro_RO.ISO8859-2.src --- share/locale/monetary/ro_RO.ISO8859-2.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/ro_RO.ISO8859-2.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/ru_RU.CP1251.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/ru_RU.CP1251.src,v retrieving revision 1.1 diff -u -r1.1 ru_RU.CP1251.src --- share/locale/monetary/ru_RU.CP1251.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/ru_RU.CP1251.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/ru_RU.CP866.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/ru_RU.CP866.src,v retrieving revision 1.1 diff -u -r1.1 ru_RU.CP866.src --- share/locale/monetary/ru_RU.CP866.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/ru_RU.CP866.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/ru_RU.ISO8859-5.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/ru_RU.ISO8859-5.src,v retrieving revision 1.1 diff -u -r1.1 ru_RU.ISO8859-5.src --- share/locale/monetary/ru_RU.ISO8859-5.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/ru_RU.ISO8859-5.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/ru_RU.KOI8-R.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/ru_RU.KOI8-R.src,v retrieving revision 1.1 diff -u -r1.1 ru_RU.KOI8-R.src --- share/locale/monetary/ru_RU.KOI8-R.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/ru_RU.KOI8-R.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/ru_RU.UTF-8.src =================================================================== RCS file: share/locale/monetary/ru_RU.UTF-8.src diff -N share/locale/monetary/ru_RU.UTF-8.src --- share/locale/monetary/ru_RU.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: ru_RU.UTF-8.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Russian Language Monetary Locale for Russian Federation -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/ru_RU.UTF-8.src,v 1.2 2007/02/28 16:28:49 ache Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -RUB -# -# Currency Symbol (currency_symbol) -# -руб. -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/sk_SK.ISO8859-2.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/sk_SK.ISO8859-2.src,v retrieving revision 1.1 diff -u -r1.1 sk_SK.ISO8859-2.src --- share/locale/monetary/sk_SK.ISO8859-2.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/sk_SK.ISO8859-2.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 2 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 4 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 2 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/sl_SI.ISO8859-2.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/sl_SI.ISO8859-2.src,v retrieving revision 1.1 diff -u -r1.1 sl_SI.ISO8859-2.src --- share/locale/monetary/sl_SI.ISO8859-2.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/sl_SI.ISO8859-2.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 2 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 2 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 2 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/sr_ME.ISO8859-2.src =================================================================== RCS file: share/locale/monetary/sr_ME.ISO8859-2.src diff -N share/locale/monetary/sr_ME.ISO8859-2.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/monetary/sr_ME.ISO8859-2.src 14 Dec 2008 18:55:49 -0000 @@ -0,0 +1,107 @@ +# $NetBSD$ +# +# Serbian Language Monetary Locale for Montenegro +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# International Currency Symbol (int_curr_symbol) +# NOTE: Last character is always SPACE +# +EUR +# +# Currency Symbol (currency_symbol) +# +Eu +# +# Monetary Decimal Point (mon_decimal_point) +# +, +# +# Monetary Thousands Separator (mon_thousands_sep) +# +. +# +# Monetary Grouping Sequence (mon_grouping) +# A sequence of integers separated by semi-colons ';'. +# +3;3 +# +# Positive Sign (positive_sign) +# + +# +# Negative Sign (negative_sign) +# +- +# +# International Fractional Digits (int_frac_digits) +# +2 +# +# Fractional Digits (frac_digits) +# +2 +# +# Currency Symbol Precedes Positive Value (p_cs_precedes) +# Must be either 1 or 0. +# +0 +# +# Separation of Currency Symbol, Sign, and Positive Value +# by a Space (p_sep_by_space) +# Must be 0, 1, or 2 +# +1 +# +# Currency Symbol Precedes Negative Value (n_cs_precedes) +# Must be either 1 or 0. +# +0 +# +# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) +# Must be 0, 1, or 2 +# +1 +# +# Positive Sign Position (p_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# Negative Sign Position (n_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) +# Must be either 1 or 0. +# +0 +# +# Separation of International Currency Symbol, Sign, and +# Positive Value (int_p_sep_by_space) +# Must be 0, 1, or 2 +# +1 +# +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) +# Must be either 1 or 0. +# +0 +# +# Separation of International Currency Symbol, Sign, and +# Negative Value (int_n_sep_by_space) +# Must be 0, 1, or 2 +# +1 +# +# International Positive Sign Position (int_p_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# International Negative Sign Position (int_n_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# EOF Index: share/locale/monetary/sr_RS.ISO8859-2.src =================================================================== RCS file: share/locale/monetary/sr_RS.ISO8859-2.src diff -N share/locale/monetary/sr_RS.ISO8859-2.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/monetary/sr_RS.ISO8859-2.src 14 Dec 2008 18:55:49 -0000 @@ -0,0 +1,107 @@ +# $NetBSD$ +# +# Serbian Language Monetary Locale for Serbia +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# International Currency Symbol (int_curr_symbol) +# NOTE: Last character is always SPACE +# +RSD +# +# Currency Symbol (currency_symbol) +# +RSD +# +# Monetary Decimal Point (mon_decimal_point) +# +, +# +# Monetary Thousands Separator (mon_thousands_sep) +# +. +# +# Monetary Grouping Sequence (mon_grouping) +# A sequence of integers separated by semi-colons ';'. +# +3;3 +# +# Positive Sign (positive_sign) +# + +# +# Negative Sign (negative_sign) +# +- +# +# International Fractional Digits (int_frac_digits) +# +2 +# +# Fractional Digits (frac_digits) +# +2 +# +# Currency Symbol Precedes Positive Value (p_cs_precedes) +# Must be either 1 or 0. +# +0 +# +# Separation of Currency Symbol, Sign, and Positive Value +# by a Space (p_sep_by_space) +# Must be 0, 1, or 2 +# +1 +# +# Currency Symbol Precedes Negative Value (n_cs_precedes) +# Must be either 1 or 0. +# +0 +# +# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) +# Must be 0, 1, or 2 +# +1 +# +# Positive Sign Position (p_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# Negative Sign Position (n_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) +# Must be either 1 or 0. +# +0 +# +# Separation of International Currency Symbol, Sign, and +# Positive Value (int_p_sep_by_space) +# Must be 0, 1, or 2 +# +1 +# +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) +# Must be either 1 or 0. +# +0 +# +# Separation of International Currency Symbol, Sign, and +# Negative Value (int_n_sep_by_space) +# Must be 0, 1, or 2 +# +1 +# +# International Positive Sign Position (int_p_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# International Negative Sign Position (int_n_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# EOF Index: share/locale/monetary/sr_YU.ISO8859-2.src =================================================================== RCS file: share/locale/monetary/sr_YU.ISO8859-2.src diff -N share/locale/monetary/sr_YU.ISO8859-2.src --- share/locale/monetary/sr_YU.ISO8859-2.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: sr_YU.ISO8859-2.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Serbian Language Monetary Locale for -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/sr_YU.ISO8859-2.src,v 1.1 2002/10/19 13:04:04 ache Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -YUD -# -# Currency Symbol (currency_symbol) -# -din -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -2 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -2 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -2 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -2 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -2 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -2 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -2 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -2 -# EOF Index: share/locale/monetary/sr_YU.ISO8859-5.src =================================================================== RCS file: share/locale/monetary/sr_YU.ISO8859-5.src diff -N share/locale/monetary/sr_YU.ISO8859-5.src --- share/locale/monetary/sr_YU.ISO8859-5.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: sr_YU.ISO8859-5.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Serbian Language Monetary Locale for -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/sr_YU.ISO8859-5.src,v 1.1 2002/10/19 13:04:04 ache Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -YUD -# -# Currency Symbol (currency_symbol) -# - -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/sr_YU.UTF-8.src =================================================================== RCS file: share/locale/monetary/sr_YU.UTF-8.src diff -N share/locale/monetary/sr_YU.UTF-8.src --- share/locale/monetary/sr_YU.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: sr_YU.UTF-8.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Serbian Language Monetary Locale for -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/sr_YU.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -YUD -# -# Currency Symbol (currency_symbol) -# -дин -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/sv_SE.ISO8859-1.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/sv_SE.ISO8859-1.src,v retrieving revision 1.1 diff -u -r1.1 sv_SE.ISO8859-1.src --- share/locale/monetary/sv_SE.ISO8859-1.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/sv_SE.ISO8859-1.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/tr_TR.ISO8859-9.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/tr_TR.ISO8859-9.src,v retrieving revision 1.1 diff -u -r1.1 tr_TR.ISO8859-9.src --- share/locale/monetary/tr_TR.ISO8859-9.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/tr_TR.ISO8859-9.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/uk_UA.CP1251.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/uk_UA.CP1251.src,v retrieving revision 1.1 diff -u -r1.1 uk_UA.CP1251.src --- share/locale/monetary/uk_UA.CP1251.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/uk_UA.CP1251.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/uk_UA.ISO8859-5.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/uk_UA.ISO8859-5.src,v retrieving revision 1.1 diff -u -r1.1 uk_UA.ISO8859-5.src --- share/locale/monetary/uk_UA.ISO8859-5.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/uk_UA.ISO8859-5.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/uk_UA.KOI8-U.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/uk_UA.KOI8-U.src,v retrieving revision 1.1 diff -u -r1.1 uk_UA.KOI8-U.src --- share/locale/monetary/uk_UA.KOI8-U.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/uk_UA.KOI8-U.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 2 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 0 @@ -55,7 +55,7 @@ # 1 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 0 @@ -75,7 +75,7 @@ # 1 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 0 @@ -86,7 +86,7 @@ # 1 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 0 Index: share/locale/monetary/uk_UA.UTF-8.src =================================================================== RCS file: share/locale/monetary/uk_UA.UTF-8.src diff -N share/locale/monetary/uk_UA.UTF-8.src --- share/locale/monetary/uk_UA.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: uk_UA.UTF-8.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Ukrainian Language Monetary Locale for Ukraine -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/uk_UA.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -UAH -# -# Currency Symbol (currency_symbol) -# -грн. -# -# Monetary Decimal Point (mon_decimal_point) -# -, -# -# Monetary Thousands Separator (mon_thousands_sep) -# - -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -0 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -1 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# EOF Index: share/locale/monetary/zh_CN.GB18030.src =================================================================== RCS file: share/locale/monetary/zh_CN.GB18030.src diff -N share/locale/monetary/zh_CN.GB18030.src --- share/locale/monetary/zh_CN.GB18030.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: zh_CN.GB18030.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Chinese Language Monetary Locale for China -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/zh_CN.GB18030.src,v 1.1 2003/07/29 16:12:56 ache Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -CNY -# -# Currency Symbol (currency_symbol) -# - -# -# Monetary Decimal Point (mon_decimal_point) -# -. -# -# Monetary Thousands Separator (mon_thousands_sep) -# -, -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -0 -# -# Fractional Digits (frac_digits) -# -0 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# EOF Index: share/locale/monetary/zh_CN.UTF-8.src =================================================================== RCS file: share/locale/monetary/zh_CN.UTF-8.src diff -N share/locale/monetary/zh_CN.UTF-8.src --- share/locale/monetary/zh_CN.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: zh_CN.UTF-8.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Chinese Language Monetary Locale for China -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/zh_CN.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -CNY -# -# Currency Symbol (currency_symbol) -# -¥ -# -# Monetary Decimal Point (mon_decimal_point) -# -. -# -# Monetary Thousands Separator (mon_thousands_sep) -# -, -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -0 -# -# Fractional Digits (frac_digits) -# -0 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -4 -# EOF Index: share/locale/monetary/zh_CN.eucCN.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/zh_CN.eucCN.src,v retrieving revision 1.1 diff -u -r1.1 zh_CN.eucCN.src --- share/locale/monetary/zh_CN.eucCN.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/zh_CN.eucCN.src 14 Dec 2008 18:55:49 -0000 @@ -44,7 +44,7 @@ # 0 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 4 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/monetary/zh_HK.Big5hkscs.src =================================================================== RCS file: share/locale/monetary/zh_HK.Big5hkscs.src diff -N share/locale/monetary/zh_HK.Big5hkscs.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/monetary/zh_HK.Big5hkscs.src 14 Dec 2008 18:55:49 -0000 @@ -0,0 +1,107 @@ +# $NetBSD$ +# +# Chinese Language Monetary Locale for Hong Kong. +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# International Currency Symbol (int_curr_symbol) +# NOTE: Last character is always SPACE +# +HKD +# +# Currency Symbol (currency_symbol) +# +HK$ +# +# Monetary Decimal Point (mon_decimal_point) +# +. +# +# Monetary Thousands Separator (mon_thousands_sep) +# +, +# +# Monetary Grouping Sequence (mon_grouping) +# A sequence of integers separated by semi-colons ';'. +# +3;3 +# +# Positive Sign (positive_sign) +# + +# +# Negative Sign (negative_sign) +# +- +# +# International Fractional Digits (int_frac_digits) +# +2 +# +# Fractional Digits (frac_digits) +# +2 +# +# Currency Symbol Precedes Positive Value (p_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of Currency Symbol, Sign, and Positive Value +# by a Space (p_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# Currency Symbol Precedes Negative Value (n_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# Positive Sign Position (p_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# Negative Sign Position (n_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +0 +# +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of International Currency Symbol, Sign, and +# Positive Value (int_p_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) +# Must be either 1 or 0. +# +1 +# +# Separation of International Currency Symbol, Sign, and +# Negative Value (int_n_sep_by_space) +# Must be 0, 1, or 2 +# +0 +# +# International Positive Sign Position (int_p_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +1 +# +# International Negative Sign Position (int_n_sign_posn) +# Must be 0, 1, 2, 3, or 4 +# +0 +# EOF Index: share/locale/monetary/zh_HK.UTF-8.src =================================================================== RCS file: share/locale/monetary/zh_HK.UTF-8.src diff -N share/locale/monetary/zh_HK.UTF-8.src --- share/locale/monetary/zh_HK.UTF-8.src 17 May 2008 04:05:52 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,109 +0,0 @@ -# $NetBSD: zh_HK.UTF-8.src,v 1.1 2008/05/17 04:05:52 ginsbach Exp $ -# -# Chinese Language Monetary Locale for Hong Kong -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/monetdef/zh_HK.UTF-8.src,v 1.1 2004/03/27 08:14:14 tjr Exp $ -# -# International Currency Symbol (int_curr_symbol) -# NOTE: Last character is always SPACE -# -HKD -# -# Currency Symbol (currency_symbol) -# -HK$ -# -# Monetary Decimal Point (mon_decimal_point) -# -. -# -# Monetary Thousands Separator (mon_thousands_sep) -# -, -# -# Monetary Grouping Sequence (mon_grouping) -# A sequence of integers separated by semi-colons ';'. -# -3;3 -# -# Positive Sign (positive_sign) -# - -# -# Negative Sign (negative_sign) -# -- -# -# International Fractional Digits (int_frac_digits) -# -2 -# -# Fractional Digits (frac_digits) -# -2 -# -# Currency Symbol Precedes Positive Value (p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Positive Value -# by a Space (p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Currency Symbol Precedes Negative Value (n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of Currency Symbol, Sign, and Negative Value (n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# Positive Sign Position (p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# Negative Sign Position (n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -0 -# -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Positive Value (int_p_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) -# Must be either 1 or 0. -# -1 -# -# Separation of International Currency Symbol, Sign, and -# Negative Value (int_n_sep_by_space) -# Must be 0, 1, or 2 -# -0 -# -# International Positive Sign Position (int_p_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -1 -# -# International Negative Sign Position (int_n_sign_posn) -# Must be 0, 1, 2, 3, or 4 -# -0 -# EOF Index: share/locale/monetary/zh_TW.Big5.src =================================================================== RCS file: /cvsroot/src/share/locale/monetary/zh_TW.Big5.src,v retrieving revision 1.1 diff -u -r1.1 zh_TW.Big5.src --- share/locale/monetary/zh_TW.Big5.src 17 May 2008 04:05:52 -0000 1.1 +++ share/locale/monetary/zh_TW.Big5.src 14 Dec 2008 18:55:50 -0000 @@ -44,7 +44,7 @@ # 0 # -# Currency Symbol Precedes Positive Value (p_cs_preceds) +# Currency Symbol Precedes Positive Value (p_cs_precedes) # Must be either 1 or 0. # 1 @@ -55,7 +55,7 @@ # 0 # -# Currency Symbol Precedes Negative Value (n_cs_preceds) +# Currency Symbol Precedes Negative Value (n_cs_precedes) # Must be either 1 or 0. # 1 @@ -75,7 +75,7 @@ # 4 # -# International Currency Symbol Precedes Positive Value (int_p_cs_preceds) +# International Currency Symbol Precedes Positive Value (int_p_cs_precedes) # Must be either 1 or 0. # 1 @@ -86,7 +86,7 @@ # 0 # -# International Currency Symbol Precedes Negative Value (int_n_cs_preceds) +# International Currency Symbol Precedes Negative Value (int_n_cs_precedes) # Must be either 1 or 0. # 1 Index: share/locale/numeric/Makefile =================================================================== RCS file: /cvsroot/src/share/locale/numeric/Makefile,v retrieving revision 1.3 diff -u -r1.3 Makefile --- share/locale/numeric/Makefile 4 Jun 2008 13:19:31 -0000 1.3 +++ share/locale/numeric/Makefile 14 Dec 2008 18:55:50 -0000 @@ -1,177 +1,91 @@ -# $NetBSD: Makefile,v 1.3 2008/06/04 13:19:31 ginsbach Exp $ +# $NetBSD$ -NOMAN= # defined +NOMAN= # defined # pull LOCALEDIR and other declarations .include -FILESOWN= ${LOCALEOWN} -FILESGRP= ${LOCALEGRP} -FILESMODE= ${LOCALEMODE} +LOCALEFILE= LC_NUMERIC -LOCALES += af_ZA.ISO8859-1 - LOCALESRC_af_ZA.ISO8859-1 = af_ZA.ISO8859-1 +LOCALESRC_af_ZA.ISO8859-15= af_ZA.ISO8859-1 +#LOCALESRC_am_ET.UTF-8= en_US.US-ASCII +LOCALESRC_be_BY.ISO8859-5= be_BY.CP1251 +LOCALESRC_ca_ES.ISO8859-15= ca_ES.ISO8859-1 +LOCALESRC_da_DK.ISO8859-15= da_DK.ISO8859-1 +LOCALESRC_de_AT.ISO8859-1= de_DE.ISO8859-1 +LOCALESRC_de_AT.ISO8859-15= de_DE.ISO8859-1 +LOCALESRC_de_CH.ISO8859-1= de_DE.ISO8859-1 +LOCALESRC_de_CH.ISO8859-15= de_DE.ISO8859-1 +LOCALESRC_de_DE.ISO8859-15= de_DE.ISO8859-1 +LOCALESRC_en_AU.ISO8859-1= en_US.US-ASCII +LOCALESRC_en_AU.ISO8859-15= en_US.US-ASCII +LOCALESRC_en_CA.ISO8859-1= en_US.US-ASCII +LOCALESRC_en_CA.ISO8859-15= en_US.US-ASCII +LOCALESRC_en_GB.ISO8859-1= en_US.US-ASCII +LOCALESRC_en_GB.ISO8859-15= en_US.US-ASCII +LOCALESRC_en_NZ.ISO8859-1= en_US.US-ASCII +LOCALESRC_en_NZ.ISO8859-15= en_US.US-ASCII +LOCALESRC_en_US.ISO8859-1= en_US.US-ASCII +LOCALESRC_en_US.ISO8859-15= en_US.US-ASCII +LOCALESRC_en_US.UTF-8= en_US.US-ASCII +LOCALESRC_es_ES.ISO8859-15= es_ES.ISO8859-1 +LOCALESRC_eu_ES.ISO8859-15= eu_ES.ISO8859-1 +LOCALESRC_fi_FI.ISO8859-15= fi_FI.ISO8859-1 +LOCALESRC_fr_BE.ISO8859-15= fr_BE.ISO8859-1 +LOCALESRC_fr_CA.ISO8859-1= fr_FR.ISO8859-1 +LOCALESRC_fr_CA.ISO8859-15= fr_FR.ISO8859-1 +LOCALESRC_fr_CH.ISO8859-1= fr_FR.ISO8859-1 +LOCALESRC_fr_CH.ISO8859-15= fr_FR.ISO8859-1 +LOCALESRC_fr_FR.ISO8859-15= fr_FR.ISO8859-1 +#LOCALESRC_he_IL.UTF-8= en_US.US-ASCII +LOCALESRC_is_IS.ISO8859-15= is_IS.ISO8859-1 +LOCALESRC_it_CH.ISO8859-1= it_IT.ISO8859-1 +LOCALESRC_it_CH.ISO8859-15= it_IT.ISO8859-1 +LOCALESRC_it_IT.ISO8859-15= it_IT.ISO8859-1 +LOCALESRC_ja_JP.ISO-2022-JP= en_US.US-ASCII +LOCALESRC_ja_JP.ISO-2022-JP-2= en_US.US-ASCII +LOCALESRC_ja_JP.SJIS= en_US.US-ASCII +LOCALESRC_ja_JP.ct= en_US.US-ASCII +LOCALESRC_ja_JP.eucJP= en_US.US-ASCII +LOCALESRC_ko_KR.eucKR= en_US.US-ASCII +LOCALESRC_lt_LT.ISO8859-4= lt_LT.ISO8859-13 +#LOCALESRC_mn_MN.UTF-8= en_US.US-ASCII +LOCALESRC_nl_BE.ISO8859-1= fr_BE.ISO8859-1 +LOCALESRC_nl_BE.ISO8859-15= fr_BE.ISO8859-1 +LOCALESRC_nl_NL.ISO8859-15= nl_NL.ISO8859-1 +LOCALESRC_nn_NO.ISO8859-1= no_NO.ISO8859-1 +LOCALESRC_nn_NO.ISO8859-15= no_NO.ISO8859-1 +LOCALESRC_no_NO.ISO8859-15= no_NO.ISO8859-1 +LOCALESRC_pt_PT.ISO8859-15= pt_PT.ISO8859-1 +LOCALESRC_ru_BY.CP1251= ru_RU.KOI8-R +LOCALESRC_ru_RU.CP1251= ru_RU.KOI8-R +LOCALESRC_ru_RU.CP866= ru_RU.KOI8-R +LOCALESRC_ru_RU.ISO8859-5= ru_RU.KOI8-R +LOCALESRC_sr_ME.ISO8859-5= sr_ME.ISO8859-2 +LOCALESRC_sr_RS.ISO8859-2= sr_ME.ISO8859-2 +LOCALESRC_sr_RS.ISO8859-5= sr_ME.ISO8859-2 +LOCALESRC_sv_SE.ISO8859-15= sv_SE.ISO8859-1 +LOCALESRC_uk_UA.CP1251= uk_UA.KOI8-U +LOCALESRC_uk_UA.ISO8859-5= uk_UA.KOI8-U +LOCALESRC_zh_CN.GB18030= en_US.US-ASCII +LOCALESRC_zh_CN.eucCN= en_US.US-ASCII +LOCALESRC_zh_HK.Big5hkscs= en_US.US-ASCII +LOCALESRC_zh_TW.Big5= en_US.US-ASCII +LOCALESRC_zh_TW.eucTW= en_US.US-ASCII -LOCALES += am_ET.UTF-8 - LOCALESRC_am_ET.UTF-8 = am_ET.UTF-8 +.include"${.CURDIR}/../Makefile.locale" -LOCALES += be_BY.CP1251 - LOCALESRC_be_BY.CP1251 = be_BY.CP1251 +all: ${LOCALES:S/$/.out/g} +realall: ${LOCALES:S/$/.out/g} -LOCALES += bg_BG.CP1251 - LOCALESRC_bg_BG.CP1251 = bg_BG.CP1251 - -LOCALES += ca_ES.ISO8859-1 - LOCALESRC_ca_ES.ISO8859-1 = ca_ES.ISO8859-1 - -LOCALES += cs_CZ.ISO8859-2 - LOCALESRC_cs_CZ.ISO8859-2 = cs_CZ.ISO8859-2 - -LOCALES += da_DK.ISO8859-1 - LOCALESRC_da_DK.ISO8859-1 = da_DK.ISO8859-1 - -LOCALES += de_DE.ISO8859-1 - LOCALESRC_de_DE.ISO8859-1 = de_DE.ISO8859-1 - -LOCALES += el_GR.ISO8859-7 - LOCALESRC_el_GR.ISO8859-7 = el_GR.ISO8859-7 - -LOCALES += en_US.ISO8859-1 - LOCALESRC_en_US.ISO8859-1 = en_US.ISO8859-1 - LOCALESYMLINK_en_US.ISO8859-1 = en_CA.ISO8859-1 en_GB.ISO8859-1 - -LOCALES += es_ES.ISO8859-1 - LOCALESRC_es_ES.ISO8859-1 = es_ES.ISO8859-1 - -LOCALES += et_EE.ISO8859-15 - LOCALESRC_et_EE.ISO8859-15 = et_EE.ISO8859-15 - -LOCALES += eu_ES.ISO8859-1 - LOCALESRC_eu_ES.ISO8859-1 = eu_ES.ISO8859-1 - -LOCALES += fi_FI.ISO8859-1 - LOCALESRC_fi_FI.ISO8859-1 = fi_FI.ISO8859-1 - -LOCALES += fr_BE.ISO8859-1 - LOCALESRC_fr_BE.ISO8859-1 = fr_BE.ISO8859-1 - -LOCALES += fr_FR.ISO8859-1 - LOCALESRC_fr_FR.ISO8859-1 = fr_FR.ISO8859-1 - -# XXX codeset not yet supported by LC_TYPE and iconv(3) -#LOCALES += hi_IN.ISCII-DEV -# LOCALESRC_hi_IN.ISCII-DEV = hi_IN.ISCII-DEV - -LOCALES += hr_HR.ISO8859-2 - LOCALESRC_hr_HR.ISO8859-2 = hr_HR.ISO8859-2 - -LOCALES += hu_HU.ISO8859-2 - LOCALESRC_hu_HU.ISO8859-2 = hu_HU.ISO8859-2 - -LOCALES += hy_AM.ARMSCII-8 - LOCALESRC_hy_AM.ARMSCII-8 = hy_AM.ARMSCII-8 - -LOCALES += is_IS.ISO8859-1 - LOCALESRC_is_IS.ISO8859-1 = is_IS.ISO8859-1 - -LOCALES += it_IT.ISO8859-1 - LOCALESRC_it_IT.ISO8859-1 = it_IT.ISO8859-1 - -LOCALES += ja_JP.eucJP - LOCALESRC_ja_JP.eucJP = ja_JP.eucJP - -LOCALES += kk_KZ.PT154 - LOCALESRC_kk_KZ.PT154 = kk_KZ.PT154 - -LOCALES += ko_KR.eucKR - LOCALESRC_ko_KR.eucKR = ko_KR.eucKR - -LOCALES += lt_LT.ISO8859-13 - LOCALESRC_lt_LT.ISO8859-13 = lt_LT.ISO8859-13 - -LOCALES += mn_MN.UTF-8 - LOCALESRC_mn_MN.UTF-8 = mn_MN.UTF-8 - -LOCALES += nl_NL.ISO8859-1 - LOCALESRC_nl_NL.ISO8859-1 = nl_NL.ISO8859-1 - -LOCALES += no_NO.ISO8859-1 - LOCALESRC_no_NO.ISO8859-1 = no_NO.ISO8859-1 - -LOCALES += pl_PL.ISO8859-2 - LOCALESRC_pl_PL.ISO8859-2 = pl_PL.ISO8859-2 - -LOCALES += pt_BR.ISO8859-1 - LOCALESRC_pt_BR.ISO8859-1 = pt_BR.ISO8859-1 - -LOCALES += pt_PT.ISO8859-1 - LOCALESRC_pt_PT.ISO8859-1 = pt_PT.ISO8859-1 - -LOCALES += ro_RO.ISO8859-2 - LOCALESRC_ro_RO.ISO8859-2 = ro_RO.ISO8859-2 - -LOCALES += ru_RU.KOI8-R - LOCALESRC_ru_RU.KOI8-R = ru_RU.KOI8-R - -LOCALES += sk_SK.ISO8859-2 - LOCALESRC_sk_SK.ISO8859-2 = sk_SK.ISO8859-2 - -LOCALES += sl_SI.ISO8859-2 - LOCALESRC_sl_SI.ISO8859-2 = sl_SI.ISO8859-2 - -LOCALES += sr_YU.ISO8859-2 - LOCALESRC_sr_YU.ISO8859-2 = sr_YU.ISO8859-2 - -LOCALES += sr_YU.ISO8859-5 - LOCALESRC_sr_YU.ISO8859-5 = sr_YU.ISO8859-5 - -LOCALES += sv_SE.ISO8859-1 - LOCALESRC_sv_SE.ISO8859-1 = sv_SE.ISO8859-1 - -LOCALES += tr_TR.ISO8859-9 - LOCALESRC_tr_TR.ISO8859-9 = tr_TR.ISO8859-9 - -LOCALES += uk_UA.KOI8-U - LOCALESRC_uk_UA.KOI8-U = uk_UA.KOI8-U - -LOCALES += zh_CN.eucCN - LOCALESRC_zh_CN.eucCN = zh_CN.eucCN - -all: ${LOCALES:S/$/.out/g} -realall: ${LOCALES:S/$/.out/g} - -.for locale in ${LOCALES} -LOCALESRCS+= ${LOCALESRC_${locale}} -.endfor -CLEANFILES+= ${LOCALES:S/$/.out/g} - -# TODO: more use of symlinks? FILES= ${LOCALES:S/$/.out/g} -.for locale in ${LOCALES} -FILESDIR_${locale}.out= ${LOCALEDIR}/${locale} -FILESNAME_${locale}.out= LC_NUMERIC -.for symlink_locale in ${LOCLESYMLINK_${locale}} -SYMLINKS+= ${FILESDIR_${locale}.out}/${FILESNAME_${locale}.out} \ - ${LOCALEDIR}/${symlink_locale}/${FILESNAME_${locale}.out} -.endfor -.endfor +CLEANFILES+= ${LOCALES:S/$/.out/g} -# dependencies .for locale in ${LOCALES} ${locale}.out: ${LOCALESRC_${locale}}.src ${_MKTARGET_CREATE} - ${TOOL_SED} -e '/^#/d' ${.CURDIR}/${LOCALESRC_${locale}}.src > ${.TARGET} + ${TOOL_MKLOCALE} -t numeric -o ${.TARGET} \ + < ${.CURDIR}/${LOCALESRC_${locale}}.src .endfor -.SUFFIXES: .src .out -.src.out: - ${_MKTARGET_CREATE} - ${TOOL_SED} -e '/^#/d' ${.IMPSRC} > ${.TARGET} - -# does not work -#depend: -# ${MKDEP} -a ${MKDEPFLAGS} \ -# ${CPPFLAGS:M-[ID]*} ${CPPFLAGS} \ -# ${LOCALESRC:S/$/.src/g:S/^/${.CURDIR}\//g} - .include Index: share/locale/numeric/am_ET.UTF-8.src =================================================================== RCS file: share/locale/numeric/am_ET.UTF-8.src diff -N share/locale/numeric/am_ET.UTF-8.src --- share/locale/numeric/am_ET.UTF-8.src 17 May 2008 04:07:29 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -# $NetBSD: am_ET.UTF-8.src,v 1.1 2008/05/17 04:07:29 ginsbach Exp $ -# -# Amharic Language Numeric Locale for Ethiopia -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/numericdef/am_ET.UTF-8.src,v 1.1 2003/08/05 05:42:08 mtm Exp $ -# -# Decimal Delimiter/Radix Character (decimal_point) -. -# Separator for groups of digits left of above (thousands_sep) -, -# Grouping Sequence (grouping) -# A sequence of integers separated by semi-colons ';'. -3;3 -# EOF Index: share/locale/numeric/en_US.ISO8859-1.src =================================================================== RCS file: share/locale/numeric/en_US.ISO8859-1.src diff -N share/locale/numeric/en_US.ISO8859-1.src --- share/locale/numeric/en_US.ISO8859-1.src 17 May 2008 04:07:29 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -# $NetBSD: en_US.ISO8859-1.src,v 1.1 2008/05/17 04:07:29 ginsbach Exp $ -# -# English Language Numeric Locale for United States -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/numericdef/en_US.ISO8859-1.src,v 1.4 2001/02/10 19:06:32 ache Exp $ -# -# Decimal Delimiter/Radix Character (decimal_point) -. -# Separator for groups of digits left of above (thousands_sep) -, -# Grouping Sequence (grouping) -# A sequence of integers separated by semi-colons ';'. -3;3 -# EOF Index: share/locale/numeric/en_US.US-ASCII.src =================================================================== RCS file: share/locale/numeric/en_US.US-ASCII.src diff -N share/locale/numeric/en_US.US-ASCII.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/numeric/en_US.US-ASCII.src 14 Dec 2008 18:55:50 -0000 @@ -0,0 +1,14 @@ +# $NetBSD$ +# +# English Language Numeric Locale for United States +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# Decimal Delimiter/Radix Character (decimal_point) +. +# Separator for groups of digits left of above (thousands_sep) +, +# Grouping Sequence (grouping) +# A sequence of integers separated by semi-colons ';'. +3;3 +# EOF Index: share/locale/numeric/ja_JP.eucJP.src =================================================================== RCS file: share/locale/numeric/ja_JP.eucJP.src diff -N share/locale/numeric/ja_JP.eucJP.src --- share/locale/numeric/ja_JP.eucJP.src 17 May 2008 04:07:30 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -# $NetBSD: ja_JP.eucJP.src,v 1.1 2008/05/17 04:07:30 ginsbach Exp $ -# -# Japanese Language Numeric Locale for Japan -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/numericdef/ja_JP.eucJP.src,v 1.1 2001/02/11 16:19:43 knu Exp $ -# -# Decimal Delimiter/Radix Character (decimal_point) -. -# Separator for groups of digits left of above (thousands_sep) -, -# Grouping Sequence (grouping) -# A sequence of integers separated by semi-colons ';'. -3;3 -# EOF Index: share/locale/numeric/ko_KR.eucKR.src =================================================================== RCS file: share/locale/numeric/ko_KR.eucKR.src diff -N share/locale/numeric/ko_KR.eucKR.src --- share/locale/numeric/ko_KR.eucKR.src 17 May 2008 04:07:30 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -# $NetBSD: ko_KR.eucKR.src,v 1.1 2008/05/17 04:07:30 ginsbach Exp $ -# -# Korean Language Numeric Locale for Korea, Republic of -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/numericdef/ko_KR.eucKR.src,v 1.1 2001/02/11 15:40:01 asmodai Exp $ -# -# Decimal Delimiter/Radix Character (decimal_point) -. -# Separator for groups of digits left of above (thousands_sep) -, -# Grouping Sequence (grouping) -# A sequence of integers separated by semi-colons ';'. -3;3 -# EOF Index: share/locale/numeric/mn_MN.UTF-8.src =================================================================== RCS file: share/locale/numeric/mn_MN.UTF-8.src diff -N share/locale/numeric/mn_MN.UTF-8.src --- share/locale/numeric/mn_MN.UTF-8.src 17 May 2008 04:07:30 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -# $NetBSD: mn_MN.UTF-8.src,v 1.1 2008/05/17 04:07:30 ginsbach Exp $ -# -# Mongolian Language Numeric Locale for Mongolia -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/numericdef/mn_MN.UTF-8.src,v 1.1 2006/10/02 00:36:52 ache Exp $ -# -# Decimal Delimiter/Radix Character (decimal_point) -. -# Separator for groups of digits left of above (thousands_sep) -, -# Grouping Sequence (grouping) -# A sequence of integers separated by semi-colons ';'. -3;3 -# EOF Index: share/locale/numeric/sr_ME.ISO8859-2.src =================================================================== RCS file: share/locale/numeric/sr_ME.ISO8859-2.src diff -N share/locale/numeric/sr_ME.ISO8859-2.src --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/locale/numeric/sr_ME.ISO8859-2.src 14 Dec 2008 18:55:50 -0000 @@ -0,0 +1,16 @@ +# $NetBSD: sr_YU.ISO8859-2.src,v 1.1 2008/05/17 04:07:30 ginsbach Exp $ +# +# Serbian Language Numeric Locale for +# +# WARNING: Empty lines and/or blank spaces may be essential. +# +# From: $FreeBSD: src/share/numericdef/sr_YU.ISO8859-2.src,v 1.1 2002/10/19 13:04:05 ache Exp $ +# +# Decimal Delimiter/Radix Character (decimal_point) +, +# Separator for groups of digits left of above (thousands_sep) + +# Grouping Sequence (grouping) +# A sequence of integers separated by semi-colons ';'. +0;0 +# EOF Index: share/locale/numeric/sr_YU.ISO8859-2.src =================================================================== RCS file: share/locale/numeric/sr_YU.ISO8859-2.src diff -N share/locale/numeric/sr_YU.ISO8859-2.src --- share/locale/numeric/sr_YU.ISO8859-2.src 17 May 2008 04:07:30 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -# $NetBSD: sr_YU.ISO8859-2.src,v 1.1 2008/05/17 04:07:30 ginsbach Exp $ -# -# Serbian Language Numeric Locale for -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/numericdef/sr_YU.ISO8859-2.src,v 1.1 2002/10/19 13:04:05 ache Exp $ -# -# Decimal Delimiter/Radix Character (decimal_point) -, -# Separator for groups of digits left of above (thousands_sep) - -# Grouping Sequence (grouping) -# A sequence of integers separated by semi-colons ';'. -0;0 -# EOF Index: share/locale/numeric/sr_YU.ISO8859-5.src =================================================================== RCS file: share/locale/numeric/sr_YU.ISO8859-5.src diff -N share/locale/numeric/sr_YU.ISO8859-5.src --- share/locale/numeric/sr_YU.ISO8859-5.src 17 May 2008 04:07:30 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -# $NetBSD: sr_YU.ISO8859-5.src,v 1.1 2008/05/17 04:07:30 ginsbach Exp $ -# -# Serbian Language Numeric Locale for -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/numericdef/sr_YU.ISO8859-5.src,v 1.1 2002/10/19 13:04:05 ache Exp $ -# -# Decimal Delimiter/Radix Character (decimal_point) -, -# Separator for groups of digits left of above (thousands_sep) - -# Grouping Sequence (grouping) -# A sequence of integers separated by semi-colons ';'. -3;3 -# EOF Index: share/locale/numeric/zh_CN.eucCN.src =================================================================== RCS file: share/locale/numeric/zh_CN.eucCN.src diff -N share/locale/numeric/zh_CN.eucCN.src --- share/locale/numeric/zh_CN.eucCN.src 17 May 2008 04:07:30 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -# $NetBSD: zh_CN.eucCN.src,v 1.1 2008/05/17 04:07:30 ginsbach Exp $ -# -# Chinese Language Numeric Locale for China -# -# WARNING: Empty lines and/or blank spaces may be essential. -# -# From: $FreeBSD: src/share/numericdef/zh_CN.eucCN.src,v 1.1 2001/02/17 18:45:08 keith Exp $ -# -# Decimal Delimiter/Radix Character (decimal_point) -. -# Separator for groups of digits left of above (thousands_sep) -, -# Grouping Sequence (grouping) -# A sequence of integers separated by semi-colons ';'. -3;3 -# EOF Index: share/locale/time/Makefile =================================================================== RCS file: /cvsroot/src/share/locale/time/Makefile,v retrieving revision 1.4 diff -u -r1.4 Makefile --- share/locale/time/Makefile 4 Jun 2008 13:19:31 -0000 1.4 +++ share/locale/time/Makefile 14 Dec 2008 18:55:50 -0000 @@ -1,322 +1,72 @@ -# $NetBSD: Makefile,v 1.4 2008/06/04 13:19:31 ginsbach Exp $ +# $NetBSD$ -NOMAN= # defined +NOMAN= # defined # pull LOCALEDIR and other declarations .include -FILESOWN= ${LOCALEOWN} -FILESGRP= ${LOCALEGRP} -FILESMODE= ${LOCALEMODE} +LOCALEFILE= LC_TIME -LOCALES += am_ET.UTF-8 - LOCALESRC_am_ET.UTF-8 = am_ET.UTF-8 +LOCALESRC_af_ZA.ISO8859-1= en_US.US-ASCII +LOCALESRC_af_ZA.ISO8859-15= en_US.US-ASCII +LOCALESRC_ca_ES.ISO8859-15= ca_ES.ISO8859-1 +LOCALESRC_da_DK.ISO8859-15= da_DK.ISO8859-1 +LOCALESRC_de_AT.ISO8859-15= de_DE.ISO8859-1 +LOCALESRC_de_CH.ISO8859-1= de_DE.ISO8859-1 +LOCALESRC_de_CH.ISO8859-15= de_DE.ISO8859-1 +LOCALESRC_de_DE.ISO8859-15= de_DE.ISO8859-1 +LOCALESRC_en_AU.ISO8859-1= en_GB.ISO8859-1 +LOCALESRC_en_AU.ISO8859-15= en_GB.ISO8859-1 +LOCALESRC_en_CA.ISO8859-1= en_GB.ISO8859-1 +LOCALESRC_en_CA.ISO8859-15= en_GB.ISO8859-1 +LOCALESRC_en_GB.ISO8859-15= en_GB.ISO8859-1 +LOCALESRC_en_NZ.ISO8859-1= en_GB.ISO8859-1 +LOCALESRC_en_NZ.ISO8859-15= en_GB.ISO8859-1 +LOCALESRC_en_US.ISO8859-1= en_US.US-ASCII +LOCALESRC_en_US.ISO8859-15= en_US.US-ASCII +LOCALESRC_en_US.UTF-8= en_US.US-ASCII +LOCALESRC_es_ES.ISO8859-15= es_ES.ISO8859-1 +LOCALESRC_eu_ES.ISO8859-15= eu_ES.ISO8859-1 +LOCALESRC_fi_FI.ISO8859-15= fi_FI.ISO8859-1 +LOCALESRC_fr_BE.ISO8859-1= fr_FR.ISO8859-1 +LOCALESRC_fr_BE.ISO8859-15= fr_FR.ISO8859-1 +LOCALESRC_fr_CA.ISO8859-1= fr_FR.ISO8859-1 +LOCALESRC_fr_CA.ISO8859-15= fr_FR.ISO8859-1 +LOCALESRC_fr_CH.ISO8859-1= fr_FR.ISO8859-1 +LOCALESRC_fr_CH.ISO8859-15= fr_FR.ISO8859-1 +LOCALESRC_fr_FR.ISO8859-15= fr_FR.ISO8859-1 +LOCALESRC_is_IS.ISO8859-15= is_IS.ISO8859-1 +LOCALESRC_it_CH.ISO8859-1= it_IT.ISO8859-1 +LOCALESRC_it_CH.ISO8859-15= it_IT.ISO8859-1 +LOCALESRC_it_IT.ISO8859-15= it_IT.ISO8859-1 +LOCALESRC_ja_JP.ISO-2022-JP-2= ja_JP.ISO-2022-JP +LOCALESRC_nl_BE.ISO8859-1= nl_NL.ISO8859-1 +LOCALESRC_nl_BE.ISO8859-15= nl_NL.ISO8859-1 +LOCALESRC_nl_NL.ISO8859-15= nl_NL.ISO8859-1 +LOCALESRC_nn_NO.ISO8859-1= no_NO.ISO8859-1 +LOCALESRC_nn_NO.ISO8859-15= no_NO.ISO8859-1 +LOCALESRC_no_NO.ISO8859-15= no_NO.ISO8859-1 +LOCALESRC_pt_PT.ISO8859-15= pt_PT.ISO8859-1 +LOCALESRC_ru_BY.CP1251= ru_RU.CP1251 +LOCALESRC_sr_RS.ISO8859-2= sr_ME.ISO8859-2 +LOCALESRC_sr_RS.ISO8859-5= sr_ME.ISO8859-5 +LOCALESRC_sv_SE.ISO8859-15= sv_SE.ISO8859-1 +LOCALESRC_zh_CN.GB18030= zh_CN.eucCN +LOCALESRC_zh_HK.Big5hkscs= zh_TW.Big5 -LOCALES += be_BY.CP1131 - LOCALESRC_be_BY.CP1131 = be_BY.CP1131 +.include"${.CURDIR}/../Makefile.locale" -LOCALES += be_BY.CP1251 - LOCALESRC_be_BY.CP1251 = be_BY.CP1251 +all: ${LOCALES:S/$/.out/g} +realall: ${LOCALES:S/$/.out/g} -LOCALES += be_BY.ISO8859-5 - LOCALESRC_be_BY.ISO8859-5 = be_BY.ISO8859-5 - -LOCALES += be_BY.UTF-8 - LOCALESRC_be_BY.UTF-8 = be_BY.UTF-8 - -LOCALES += bg_BG.CP1251 - LOCALESRC_bg_BG.CP1251 = bg_BG.CP1251 - -LOCALES += bg_BG.UTF-8 - LOCALESRC_bg_BG.UTF-8 = bg_BG.UTF-8 - -LOCALES += ca_ES.ISO8859-1 - LOCALESRC_ca_ES.ISO8859-1 = ca_ES.ISO8859-1 - -LOCALES += ca_ES.UTF-8 - LOCALESRC_ca_ES.UTF-8 = ca_ES.UTF-8 - -LOCALES += cs_CZ.ISO8859-2 - LOCALESRC_cs_CZ.ISO8859-2 = cs_CZ.ISO8859-2 - -LOCALES += cs_CZ.UTF-8 - LOCALESRC_cs_CZ.UTF-8 = cs_CZ.UTF-8 - -LOCALES += da_DK.ISO8859-1 - LOCALESRC_da_DK.ISO8859-1 = da_DK.ISO8859-1 - -LOCALES += da_DK.UTF-8 - LOCALESRC_da_DK.UTF-8 = da_DK.UTF-8 - -LOCALES += de_AT.ISO8859-1 - LOCALESRC_de_AT.ISO8859-1 = de_AT.ISO8859-1 - -LOCALES += de_AT.UTF-8 - LOCALESRC_de_AT.UTF-8 = de_AT.UTF-8 - -LOCALES += de_DE.ISO8859-1 - LOCALESRC_de_DE.ISO8859-1 = de_DE.ISO8859-1 - -LOCALES += de_DE.UTF-8 - LOCALESRC_de_DE.UTF-8 = de_DE.UTF-8 - -LOCALES += el_GR.ISO8859-7 - LOCALESRC_el_GR.ISO8859-7 = el_GR.ISO8859-7 - -LOCALES += el_GR.UTF-8 - LOCALESRC_el_GR.UTF-8 = el_GR.UTF-8 - -LOCALES += en_GB.ISO8859-1 - LOCALESRC_en_GB.ISO8859-1 = en_GB.ISO8859-1 - -LOCALES += en_US.ISO8859-1 - LOCALESRC_en_US.ISO8859-1 = en_US.ISO8859-1 - -LOCALES += es_ES.ISO8859-1 - LOCALESRC_es_ES.ISO8859-1 = es_ES.ISO8859-1 - -LOCALES += es_ES.UTF-8 - LOCALESRC_es_ES.UTF-8 = es_ES.UTF-8 - -LOCALES += et_EE.ISO8859-15 - LOCALESRC_et_EE.ISO8859-15 = et_EE.ISO8859-15 - -LOCALES += et_EE.UTF-8 - LOCALESRC_et_EE.UTF-8 = et_EE.UTF-8 - -LOCALES += eu_ES.ISO8859-1 - LOCALESRC_eu_ES.ISO8859-1 = eu_ES.ISO8859-1 - -LOCALES += fi_FI.ISO8859-1 - LOCALESRC_fi_FI.ISO8859-1 = fi_FI.ISO8859-1 - -LOCALES += fi_FI.UTF-8 - LOCALESRC_fi_FI.UTF-8 = fi_FI.UTF-8 - -LOCALES += fr_FR.ISO8859-1 - LOCALESRC_fr_FR.ISO8859-1 = fr_FR.ISO8859-1 - -LOCALES += fr_FR.UTF-8 - LOCALESRC_fr_FR.UTF-8 = fr_FR.UTF-8 - -LOCALES += he_IL.UTF-8 - LOCALESRC_he_IL.UTF-8 = he_IL.UTF-8 - -# XXX codeset not yet supported by LC_TYPE and iconv(3) -#LOCALES += hi_IN.ISCII-DEV -# LOCALESRC_hi_IN.ISCII-DEV = hi_IN.ISCII-DEV - -LOCALES += hr_HR.ISO8859-2 - LOCALESRC_hr_HR.ISO8859-2 = hr_HR.ISO8859-2 - -LOCALES += h