1 # $NetBSD: Makefile.common,v 1.2 2020/03/23 13:56:12 kim Exp $ 2 3 all: ${LOCALES:S/$/.out/g} 4 realall: ${LOCALES:S/$/.out/g} 5 6 FILES= ${LOCALES:S/$/.out/g} 7 CLEANFILES+= ${LOCALES:S/$/.out/g} 8 9 .SUFFIXES: .src .out 10 .src.out: 11 ${_MKTARGET_CREATE} 12 ${TOOL_MKLOCALE} -t ${CATEGORY} -o ${.TARGET} < ${.IMPSRC} 13 14 .PATH: ${.CURDIR}/converted 15 16 .for locale in ${LOCALES} 17 ${locale}.out: ${locale}.src 18 .endfor 19 20 .PHONY: update-converted 21 22 update-converted: 23 @mkdir -p ${.CURDIR}/converted 24 .for locale in ${LOCALES:O} 25 . for charset in ${locale:C/([^\.]*)\.([^\.]*)/\2/} 26 . for locale_name in ${locale:C/([^\.]*)\.([^\.]*)/\1/} 27 . if ${locale} == "ja_JP.ct" 28 @echo Generating character set ${charset} of ${locale_name}... 29 @rm -f ${.CURDIR}/converted/${locale}.src 30 @iconv -f UTF-8 -t eucJP < ${.CURDIR}/${locale_name}.UTF-8.src \ 31 | iconv -f eucJP -t ctext > ${.CURDIR}/converted/${locale}.src.tmp; \ 32 sed "s,\(Character set:\) UTF-8,\1 COMPOUND_TEXT," \ 33 < ${.CURDIR}/converted/${locale}.src.tmp \ 34 > ${.CURDIR}/converted/${locale}.src; \ 35 rm ${.CURDIR}/converted/${locale}.src.tmp 36 . elif !exists(${.CURDIR}/${locale}.src) 37 @echo Generating character set ${charset} of ${locale_name}... 38 @rm -f ${.CURDIR}/converted/${locale}.src 39 @set -e; cat < ${.CURDIR}/${locale_name}.UTF-8.src \ 40 | (case ${locale} in fi_FI.ISO8859-1) sed 's,,e,g';; *) cat ;; esac) \ 41 | (case ${charset} in ISO8859-[125]) sed 's,,EUR,g';; *) cat ;; esac) \ 42 | (case ${charset} in ISO8859-9) sed 's,,L,g';; *) cat ;; esac) \ 43 | (case ${charset} in ISO8859*) sed 's,,-,g';; *) cat ;; esac) \ 44 | (case ${charset} in ISO8859*) sed 's,,-,g';; *) cat ;; esac) \ 45 | (case ${charset} in ISO8859-1) sed 's,,,g';; *) cat ;; esac) \ 46 | (case ${charset} in ISO8859-15) sed 's,,'\'',g';; *) cat ;; esac) \ 47 | (case ${charset} in KOI8-U|CP1251|ISO8859-5) sed 's,,'\'',g';; *) cat ;; esac) \ 48 | (case ${charset} in ISO8859-2) sed 's,,,g';; *) cat ;; esac) \ 49 | (case ${charset} in ISO8859-5|KOI8-U|CP1251) sed 's,,.,g';; *) cat ;; esac) \ 50 | iconv -f UTF-8 -t ${charset} \ 51 > ${.CURDIR}/converted/${locale}.src.tmp; \ 52 sed "s,\(Character set:\) UTF-8,\1 ${charset}," \ 53 < ${.CURDIR}/converted/${locale}.src.tmp \ 54 > ${.CURDIR}/converted/${locale}.src; \ 55 rm ${.CURDIR}/converted/${locale}.src.tmp 56 . endif 57 . endfor 58 . endfor 59 .endfor 60 61 .include <bsd.prog.mk> 62