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