PACKAGE=	locales
FILESGROUPS=	FILES ALWAYS
ALWAYSPACKAGE=	runtime
LOCALEDIR=	${SHAREDIR}/locale
FILESNAME=	LC_CTYPE
ALWAYSNAME=	LC_CTYPE
.SUFFIXES:	.src .LC_CTYPE
MAPLOC=		${.CURDIR}/../../tools/tools/locale/etc/final-maps

.include <bsd.endian.mk>
.include <src.opts.mk>

.src.LC_CTYPE:
	localedef ${LOCALEDEF_ENDIAN} -D -U -c -w ${MAPLOC}/widths.txt \
	-f ${MAPLOC}/map.${.IMPSRC:T:R:E} \
	-i ${.IMPSRC} ${.OBJDIR}/${.IMPSRC:T:R}

LOCALES+=	C.UTF-8
.if ${MK_LOCALES} != no
LOCALES+=	be_BY.CP1131
LOCALES+=	ca_IT.ISO8859-1
LOCALES+=	ca_IT.ISO8859-15
LOCALES+=	el_GR.ISO8859-7
LOCALES+=	en_US.ISO8859-1
LOCALES+=	en_US.ISO8859-15
LOCALES+=	en_US.US-ASCII
LOCALES+=	hi_IN.ISCII-DEV
LOCALES+=	hy_AM.ARMSCII-8
LOCALES+=	ja_JP.SJIS
LOCALES+=	ja_JP.eucJP
LOCALES+=	ko_KR.eucKR
LOCALES+=	lv_LV.ISO8859-13
LOCALES+=	ru_RU.CP1251
LOCALES+=	ru_RU.CP866
LOCALES+=	ru_RU.ISO8859-5
LOCALES+=	ru_RU.KOI8-R
LOCALES+=	sr_RS.ISO8859-2
LOCALES+=	tr_TR.ISO8859-9
LOCALES+=	uk_UA.CP1251
LOCALES+=	uk_UA.ISO8859-5
LOCALES+=	uk_UA.KOI8-U
LOCALES+=	zh_CN.GB18030
LOCALES+=	zh_CN.GB2312
LOCALES+=	zh_CN.GBK
LOCALES+=	zh_CN.eucCN
LOCALES+=	zh_TW.Big5

SAME+=		C.UTF-8 en_US.UTF-8
SAME+=		C.UTF-8 ru_RU.UTF-8
SAME+=		C.UTF-8 zh_TW.UTF-8
SAME+=		C.UTF-8 zh_HK.UTF-8
SAME+=		C.UTF-8 zh_CN.UTF-8
SAME+=		C.UTF-8 uk_UA.UTF-8
SAME+=		C.UTF-8 tr_TR.UTF-8
SAME+=		C.UTF-8 sv_SE.UTF-8
SAME+=		C.UTF-8 sv_FI.UTF-8
SAME+=		C.UTF-8 sr_RS.UTF-8@latin
SAME+=		C.UTF-8 sr_RS.UTF-8
SAME+=		C.UTF-8 sl_SI.UTF-8
SAME+=		C.UTF-8 sk_SK.UTF-8
SAME+=		C.UTF-8 se_NO.UTF-8
SAME+=		C.UTF-8 se_FI.UTF-8
SAME+=		C.UTF-8 ro_RO.UTF-8
SAME+=		C.UTF-8 pt_PT.UTF-8
SAME+=		C.UTF-8 pt_BR.UTF-8
SAME+=		C.UTF-8 pl_PL.UTF-8
SAME+=		C.UTF-8 nn_NO.UTF-8
SAME+=		C.UTF-8 nl_NL.UTF-8
SAME+=		C.UTF-8 nl_BE.UTF-8
SAME+=		C.UTF-8 nb_NO.UTF-8
SAME+=		C.UTF-8 mn_MN.UTF-8
SAME+=		C.UTF-8 lv_LV.UTF-8
SAME+=		C.UTF-8 lt_LT.UTF-8
SAME+=		C.UTF-8 ko_KR.UTF-8
SAME+=		C.UTF-8 kk_KZ.UTF-8
SAME+=		C.UTF-8 ja_JP.UTF-8
SAME+=		C.UTF-8 it_IT.UTF-8
SAME+=		C.UTF-8 it_CH.UTF-8
SAME+=		C.UTF-8 is_IS.UTF-8
SAME+=		C.UTF-8 hy_AM.UTF-8
SAME+=		C.UTF-8 hu_HU.UTF-8
SAME+=		C.UTF-8 hr_HR.UTF-8
SAME+=		C.UTF-8 hi_IN.UTF-8
SAME+=		C.UTF-8 he_IL.UTF-8
SAME+=		C.UTF-8 ga_IE.UTF-8
SAME+=		C.UTF-8 fa_AF.UTF-8
SAME+=		C.UTF-8 fa_IR.UTF-8
SAME+=		C.UTF-8 fr_FR.UTF-8
SAME+=		C.UTF-8 fr_CH.UTF-8
SAME+=		C.UTF-8 fr_CA.UTF-8
SAME+=		C.UTF-8 fr_BE.UTF-8
SAME+=		C.UTF-8 fi_FI.UTF-8
SAME+=		C.UTF-8 eu_ES.UTF-8
SAME+=		C.UTF-8 et_EE.UTF-8
SAME+=		C.UTF-8 es_MX.UTF-8
SAME+=		C.UTF-8 es_ES.UTF-8
SAME+=		C.UTF-8 es_CR.UTF-8
SAME+=		C.UTF-8 es_AR.UTF-8
SAME+=		C.UTF-8 en_ZA.UTF-8
SAME+=		C.UTF-8 en_SG.UTF-8
SAME+=		C.UTF-8 en_PH.UTF-8
SAME+=		C.UTF-8 en_NZ.UTF-8
SAME+=		C.UTF-8 en_IE.UTF-8
SAME+=		C.UTF-8 en_HK.UTF-8
SAME+=		C.UTF-8 en_GB.UTF-8
SAME+=		C.UTF-8 en_CA.UTF-8
SAME+=		C.UTF-8 en_AU.UTF-8
SAME+=		C.UTF-8 el_GR.UTF-8
SAME+=		C.UTF-8 de_DE.UTF-8
SAME+=		C.UTF-8 de_CH.UTF-8
SAME+=		C.UTF-8 de_AT.UTF-8
SAME+=		C.UTF-8 da_DK.UTF-8
SAME+=		C.UTF-8 cs_CZ.UTF-8
SAME+=		C.UTF-8 ca_IT.UTF-8
SAME+=		C.UTF-8 ca_FR.UTF-8
SAME+=		C.UTF-8 ca_ES.UTF-8
SAME+=		C.UTF-8 ca_AD.UTF-8
SAME+=		C.UTF-8 bg_BG.UTF-8
SAME+=		C.UTF-8 be_BY.UTF-8
SAME+=		C.UTF-8 ar_SA.UTF-8
SAME+=		C.UTF-8 ar_QA.UTF-8
SAME+=		C.UTF-8 ar_MA.UTF-8
SAME+=		C.UTF-8 ar_JO.UTF-8
SAME+=		C.UTF-8 ar_EG.UTF-8
SAME+=		C.UTF-8 ar_AE.UTF-8
SAME+=		C.UTF-8 am_ET.UTF-8
SAME+=		C.UTF-8 af_ZA.UTF-8
SAME+=		en_US.ISO8859-1 sv_SE.ISO8859-1
SAME+=		en_US.ISO8859-1 sv_FI.ISO8859-1
SAME+=		en_US.ISO8859-1 pt_PT.ISO8859-1
SAME+=		en_US.ISO8859-1 pt_BR.ISO8859-1
SAME+=		en_US.ISO8859-1 nn_NO.ISO8859-1
SAME+=		en_US.ISO8859-1 nl_NL.ISO8859-1
SAME+=		en_US.ISO8859-1 nl_BE.ISO8859-1
SAME+=		en_US.ISO8859-1 nb_NO.ISO8859-1
SAME+=		en_US.ISO8859-1 it_IT.ISO8859-1
SAME+=		en_US.ISO8859-1 it_CH.ISO8859-1
SAME+=		en_US.ISO8859-1 is_IS.ISO8859-1
SAME+=		en_US.ISO8859-1 fr_FR.ISO8859-1
SAME+=		en_US.ISO8859-1 fr_CH.ISO8859-1
SAME+=		en_US.ISO8859-1 fr_CA.ISO8859-1
SAME+=		en_US.ISO8859-1 fr_BE.ISO8859-1
SAME+=		en_US.ISO8859-1 fi_FI.ISO8859-1
SAME+=		en_US.ISO8859-1 eu_ES.ISO8859-1
SAME+=		en_US.ISO8859-1 et_EE.ISO8859-1
SAME+=		en_US.ISO8859-1 es_MX.ISO8859-1
SAME+=		en_US.ISO8859-1 es_ES.ISO8859-1
SAME+=		en_US.ISO8859-1 es_AR.ISO8859-1
SAME+=		en_US.ISO8859-1 en_ZA.ISO8859-1
SAME+=		en_US.ISO8859-1 en_SG.ISO8859-1
SAME+=		en_US.ISO8859-1 en_NZ.ISO8859-1
SAME+=		en_US.ISO8859-1 en_IE.ISO8859-1
SAME+=		en_US.ISO8859-1 en_HK.ISO8859-1
SAME+=		en_US.ISO8859-1 en_GB.ISO8859-1
SAME+=		en_US.ISO8859-1 en_CA.ISO8859-1
SAME+=		en_US.ISO8859-1 en_AU.ISO8859-1
SAME+=		en_US.ISO8859-1 de_DE.ISO8859-1
SAME+=		en_US.ISO8859-1 de_CH.ISO8859-1
SAME+=		en_US.ISO8859-1 de_AT.ISO8859-1
SAME+=		en_US.ISO8859-1 da_DK.ISO8859-1
SAME+=		en_US.ISO8859-1 af_ZA.ISO8859-1
SAME+=		en_US.ISO8859-15 en_GB.ISO8859-15
SAME+=		en_US.ISO8859-15 sv_SE.ISO8859-15
SAME+=		en_US.ISO8859-15 sv_FI.ISO8859-15
SAME+=		en_US.ISO8859-15 pt_PT.ISO8859-15
SAME+=		en_US.ISO8859-15 nn_NO.ISO8859-15
SAME+=		en_US.ISO8859-15 nl_NL.ISO8859-15
SAME+=		en_US.ISO8859-15 nl_BE.ISO8859-15
SAME+=		en_US.ISO8859-15 nb_NO.ISO8859-15
SAME+=		en_US.ISO8859-15 it_IT.ISO8859-15
SAME+=		en_US.ISO8859-15 it_CH.ISO8859-15
SAME+=		en_US.ISO8859-15 is_IS.ISO8859-15
SAME+=		en_US.ISO8859-15 fr_FR.ISO8859-15
SAME+=		en_US.ISO8859-15 fr_CH.ISO8859-15
SAME+=		en_US.ISO8859-15 fr_CA.ISO8859-15
SAME+=		en_US.ISO8859-15 fr_BE.ISO8859-15
SAME+=		en_US.ISO8859-15 fi_FI.ISO8859-15
SAME+=		en_US.ISO8859-15 eu_ES.ISO8859-15
SAME+=		en_US.ISO8859-15 et_EE.ISO8859-15
SAME+=		en_US.ISO8859-15 es_ES.ISO8859-15
SAME+=		en_US.ISO8859-15 en_ZA.ISO8859-15
SAME+=		en_US.ISO8859-15 en_NZ.ISO8859-15
SAME+=		en_US.ISO8859-15 en_IE.ISO8859-15
SAME+=		en_US.ISO8859-15 en_CA.ISO8859-15
SAME+=		en_US.ISO8859-15 en_AU.ISO8859-15
SAME+=		en_US.ISO8859-15 de_DE.ISO8859-15
SAME+=		en_US.ISO8859-15 de_CH.ISO8859-15
SAME+=		en_US.ISO8859-15 de_AT.ISO8859-15
SAME+=		en_US.ISO8859-15 da_DK.ISO8859-15
SAME+=		en_US.ISO8859-15 af_ZA.ISO8859-15
SAME+=		ru_RU.CP1251 bg_BG.CP1251
SAME+=		ru_RU.CP1251 be_BY.CP1251
SAME+=		ru_RU.ISO8859-5 sr_RS.ISO8859-5
SAME+=		ru_RU.ISO8859-5 be_BY.ISO8859-5
SAME+=		ca_IT.ISO8859-1 ca_FR.ISO8859-1
SAME+=		ca_IT.ISO8859-1 ca_ES.ISO8859-1
SAME+=		ca_IT.ISO8859-1 ca_AD.ISO8859-1
SAME+=		ca_IT.ISO8859-15 ca_FR.ISO8859-15
SAME+=		ca_IT.ISO8859-15 ca_ES.ISO8859-15
SAME+=		ca_IT.ISO8859-15 ca_AD.ISO8859-15
SAME+=		sr_RS.ISO8859-2 sl_SI.ISO8859-2
SAME+=		sr_RS.ISO8859-2 sk_SK.ISO8859-2
SAME+=		sr_RS.ISO8859-2 ro_RO.ISO8859-2
SAME+=		sr_RS.ISO8859-2 pl_PL.ISO8859-2
SAME+=		sr_RS.ISO8859-2 hu_HU.ISO8859-2
SAME+=		sr_RS.ISO8859-2 hr_HR.ISO8859-2
SAME+=		sr_RS.ISO8859-2 cs_CZ.ISO8859-2
SAME+=		en_US.US-ASCII en_ZA.US-ASCII
SAME+=		en_US.US-ASCII en_NZ.US-ASCII
SAME+=		en_US.US-ASCII en_GB.US-ASCII
SAME+=		en_US.US-ASCII en_CA.US-ASCII
SAME+=		en_US.US-ASCII en_AU.US-ASCII
SAME+=		lv_LV.ISO8859-13 lt_LT.ISO8859-13
SAME+=		ko_KR.eucKR ko_KR.CP949	# legacy (same charset)
.endif

# C.UTF-8 is the default locale, so it should always been installed.
ALWAYS=		C.UTF-8.LC_CTYPE
FILES=		${LOCALES:NC.UTF-8:C/.+$/&.LC_CTYPE/}
CLEANFILES=	${FILES}

.for f t in ${SAME}
DIRS+=	LOCALEDIR_$t
LOCALEDIR_$t=	${LOCALEDIR}/$t
LOCALEDIR_$tPACKAGE=	locales
SYMLINKS+=	../$f/${FILESNAME} \
    ${LOCALEDIR}/$t/${FILESNAME}
.endfor

.for f in ${LOCALES}
FILESDIR_${f}.LC_CTYPE= ${LOCALEDIR}/${f}
FILESDIR_${f}.LC_CTYPEPACKAGE=	locales
.endfor
ALWAYSDIR_C.UTF-8.LC_CTYPE= ${LOCALEDIR}/C.UTF-8

SYMPAIRS+=	zh_CN.eucCN.src zh_CN.GB18030.src
SYMPAIRS+=	zh_CN.eucCN.src zh_CN.GB2312.src
SYMPAIRS+=	zh_CN.eucCN.src zh_CN.GBK.src
SYMPAIRS+=	en_US.ISO8859-1.src en_US.ISO8859-15.src
SYMPAIRS+=	en_US.ISO8859-1.src en_US.US-ASCII.src
SYMPAIRS+=	en_US.ISO8859-1.src lv_LV.ISO8859-13.src
SYMPAIRS+=	en_US.ISO8859-1.src sr_RS.ISO8859-2.src
SYMPAIRS+=	en_US.ISO8859-1.src tr_TR.ISO8859-9.src
SYMPAIRS+=	ca_IT.ISO8859-1.src ca_IT.ISO8859-15.src
SYMPAIRS+=	uk_UA.CP1251.src uk_UA.ISO8859-5.src
SYMPAIRS+=	uk_UA.CP1251.src uk_UA.KOI8-U.src
SYMPAIRS+=	ja_JP.eucJP.src ja_JP.SJIS.src
SYMPAIRS+=	be_BY.CP1131.src ru_RU.CP1251.src
SYMPAIRS+=	be_BY.CP1131.src ru_RU.CP866.src
SYMPAIRS+=	be_BY.CP1131.src ru_RU.ISO8859-5.src
SYMPAIRS+=	be_BY.CP1131.src ru_RU.KOI8-R.src

.for s t in ${SYMPAIRS}
${t:S/src$/LC_CTYPE/}: $s
	localedef ${LOCALEDEF_ENDIAN} -D -U -c -w ${MAPLOC}/widths.txt \
	-f ${MAPLOC}/map.${.TARGET:T:R:C/^.*\.//} \
	-i ${.ALLSRC} ${.OBJDIR}/${.TARGET:T:R}
.endfor

.include <bsd.prog.mk>
