1 2# Directory containing conversion tables. 3# You have to unpack the conversion-tables.tar.gz package. 4TABLESDIR = /home/bruno/chs/conversion-tables 5 6ALL = \ 7 ascii.h \ 8 iso8859_1.h \ 9 iso8859_2.h \ 10 iso8859_3.h \ 11 iso8859_4.h \ 12 iso8859_5.h \ 13 iso8859_6.h \ 14 iso8859_7.h \ 15 iso8859_8.h \ 16 iso8859_9.h \ 17 iso8859_10.h \ 18 iso8859_11.h \ 19 iso8859_13.h \ 20 iso8859_14.h \ 21 iso8859_15.h \ 22 iso8859_16.h \ 23 koi8_r.h \ 24 koi8_u.h \ 25 koi8_ru.h \ 26 cp1250.h \ 27 cp1251.h \ 28 cp1252.h \ 29 cp1253.h \ 30 cp1254.h \ 31 cp1255.h \ 32 cp1256.h \ 33 cp1257.h \ 34 cp1258.h \ 35 cp850.h \ 36 cp862.h \ 37 cp866.h \ 38 mac_roman.h \ 39 mac_centraleurope.h \ 40 mac_iceland.h \ 41 mac_croatian.h \ 42 mac_romania.h \ 43 mac_cyrillic.h \ 44 mac_ukraine.h \ 45 mac_greek.h \ 46 mac_turkish.h \ 47 mac_hebrew.h \ 48 mac_arabic.h \ 49 mac_thai.h \ 50 hp_roman8.h \ 51 nextstep.h \ 52 armscii_8.h \ 53 georgian_academy.h \ 54 georgian_ps.h \ 55 koi8_t.h \ 56 pt154.h \ 57 mulelao.h \ 58 cp1133.h \ 59 tis620.h \ 60 cp874.h \ 61 viscii.h \ 62 tcvn.h \ 63 jisx0201.h \ 64 jisx0208.h \ 65 jisx0212.h \ 66 cp932ext.h \ 67 gb2312.h \ 68 isoir165ext.h \ 69 gb12345ext.h \ 70 gbkext1.h \ 71 gbkext2.h \ 72 gbkext_inv.h \ 73 cp936ext.h \ 74 gb18030ext.h \ 75 gb18030uni.h \ 76 cns11643_1.h \ 77 cns11643_2.h \ 78 cns11643_3.h \ 79 cns11643_4a.h \ 80 cns11643_4b.h \ 81 cns11643_5.h \ 82 cns11643_6.h \ 83 cns11643_7.h \ 84 cns11643_15.h \ 85 cns11643_inv.h \ 86 big5.h \ 87 cp950ext.h \ 88 hkscs1999.h \ 89 hkscs2001.h \ 90 hkscs2004.h \ 91 ksc5601.h \ 92 uhc_1.h \ 93 uhc_2.h \ 94 johab_hangul.h \ 95 cp856.h \ 96 cp922.h \ 97 cp1046.h \ 98 cp1124.h \ 99 cp1129.h \ 100 cp1161.h \ 101 cp1162.h \ 102 cp1163.h \ 103 cp437.h \ 104 cp737.h \ 105 cp775.h \ 106 cp852.h \ 107 cp853.h \ 108 cp855.h \ 109 cp857.h \ 110 cp858.h \ 111 cp860.h \ 112 cp861.h \ 113 cp863.h \ 114 cp864.h \ 115 cp865.h \ 116 cp869.h \ 117 cp1125.h \ 118 jisx0213.h \ 119 tds565.h \ 120 atarist.h \ 121 riscos1.h \ 122 cjk_variants.h 123 124all : $(ALL) 125 126ascii.h : $(TABLESDIR)/glibc-2.1-iconv/ASCII.TXT 8bit_tab_to_h 127 ./8bit_tab_to_h ASCII ascii < $< 128 129iso8859_1.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-1.TXT 8bit_tab_to_h 130 ./8bit_tab_to_h ISO-8859-1 iso8859_1 < $< 131 132iso8859_2.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-2.TXT 8bit_tab_to_h 133 ./8bit_tab_to_h ISO-8859-2 iso8859_2 < $< 134 135iso8859_3.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-3.TXT 8bit_tab_to_h 136 ./8bit_tab_to_h ISO-8859-3 iso8859_3 < $< 137 138iso8859_4.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-4.TXT 8bit_tab_to_h 139 ./8bit_tab_to_h ISO-8859-4 iso8859_4 < $< 140 141iso8859_5.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-5.TXT 8bit_tab_to_h 142 ./8bit_tab_to_h ISO-8859-5 iso8859_5 < $< 143 144iso8859_6.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-6.TXT 8bit_tab_to_h 145 ./8bit_tab_to_h ISO-8859-6 iso8859_6 < $< 146 147iso8859_7.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-7-2003.TXT 8bit_tab_to_h 148 ./8bit_tab_to_h ISO-8859-7 iso8859_7 < $< 149 150iso8859_8.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-8.TXT 8bit_tab_to_h 151 ./8bit_tab_to_h ISO-8859-8 iso8859_8 < $< 152 153iso8859_9.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-9.TXT 8bit_tab_to_h 154 ./8bit_tab_to_h ISO-8859-9 iso8859_9 < $< 155 156iso8859_10.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-10.TXT 8bit_tab_to_h 157 ./8bit_tab_to_h ISO-8859-10 iso8859_10 < $< 158 159iso8859_11.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-11.TXT 8bit_tab_to_h 160 ./8bit_tab_to_h ISO-8859-11 iso8859_11 < $< 161 162iso8859_13.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-13.TXT 8bit_tab_to_h 163 ./8bit_tab_to_h ISO-8859-13 iso8859_13 < $< 164 165iso8859_14.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-14.TXT 8bit_tab_to_h 166 ./8bit_tab_to_h ISO-8859-14 iso8859_14 < $< 167 168iso8859_15.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-15.TXT 8bit_tab_to_h 169 ./8bit_tab_to_h ISO-8859-15 iso8859_15 < $< 170 171iso8859_16.h : $(TABLESDIR)/unicode.org-mappings/ISO8859/8859-16.TXT 8bit_tab_to_h 172 ./8bit_tab_to_h ISO-8859-16 iso8859_16 < $< 173 174koi8_r.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/KOI8-R.TXT 8bit_tab_to_h 175 ./8bit_tab_to_h KOI8-R koi8_r < $< 176 177koi8_u.h : $(TABLESDIR)/csets-new/KOI8-U.TXT 8bit_tab_to_h 178 ./8bit_tab_to_h KOI8-U koi8_u < $< 179 180koi8_ru.h : $(TABLESDIR)/freebsd-iconv-0.4/KOI8-RU.TXT 8bit_tab_to_h 181 ./8bit_tab_to_h KOI8-RU koi8_ru < $< 182 183cp1250.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP1250.TXT 8bit_tab_to_h 184 ./8bit_tab_to_h CP1250 cp1250 < $< 185 186cp1251.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP1251.TXT 8bit_tab_to_h 187 ./8bit_tab_to_h CP1251 cp1251 < $< 188 189cp1252.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP1252.TXT 8bit_tab_to_h 190 ./8bit_tab_to_h CP1252 cp1252 < $< 191 192cp1253.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP1253.TXT 8bit_tab_to_h 193 ./8bit_tab_to_h CP1253 cp1253 < $< 194 195cp1254.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP1254.TXT 8bit_tab_to_h 196 ./8bit_tab_to_h CP1254 cp1254 < $< 197 198cp1255.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP1255.TXT 8bit_tab_to_h 199 ./8bit_tab_to_h CP1255 cp1255 < $< 200 201cp1256.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP1256.TXT 8bit_tab_to_h 202 ./8bit_tab_to_h CP1256 cp1256 < $< 203 204cp1257.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP1257.TXT 8bit_tab_to_h 205 ./8bit_tab_to_h CP1257 cp1257 < $< 206 207cp1258.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP1258.TXT 8bit_tab_to_h 208 ./8bit_tab_to_h CP1258 cp1258 < $< 209 210cp850.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP850.TXT 8bit_tab_to_h 211 ./8bit_tab_to_h CP850 cp850 < $< 212 213cp862.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP862.TXT 8bit_tab_to_h 214 ./8bit_tab_to_h CP862 cp862 < $< 215 216cp866.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP866.TXT 8bit_tab_to_h 217 ./8bit_tab_to_h CP866 cp866 < $< 218 219mac_roman.h : $(TABLESDIR)/jdk-1.1.7b/MAC-ROMAN.TXT 8bit_tab_to_h 220 ./8bit_tab_to_h MacRoman mac_roman < $< 221 222mac_centraleurope.h : $(TABLESDIR)/jdk-1.1.7b/MAC-CENTRAL-EUROPE.TXT 8bit_tab_to_h 223 ./8bit_tab_to_h MacCentralEurope mac_centraleurope < $< 224 225mac_iceland.h : $(TABLESDIR)/jdk-1.1.7b/MAC-ICELAND.TXT 8bit_tab_to_h 226 ./8bit_tab_to_h MacIceland mac_iceland < $< 227 228mac_croatian.h : $(TABLESDIR)/jdk-1.1.7b/MAC-CROATIAN.TXT 8bit_tab_to_h 229 ./8bit_tab_to_h MacCroatian mac_croatian < $< 230 231mac_romania.h : $(TABLESDIR)/jdk-1.1.7b/MAC-ROMANIA.TXT 8bit_tab_to_h 232 ./8bit_tab_to_h MacRomania mac_romania < $< 233 234mac_cyrillic.h : $(TABLESDIR)/jdk-1.1.7b/MAC-CYRILLIC.TXT 8bit_tab_to_h 235 ./8bit_tab_to_h MacCyrillic mac_cyrillic < $< 236 237mac_ukraine.h : $(TABLESDIR)/jdk-1.1.7b/MAC-UKRAINE.TXT 8bit_tab_to_h 238 ./8bit_tab_to_h MacUkraine mac_ukraine < $< 239 240mac_greek.h : $(TABLESDIR)/jdk-1.1.7b/MAC-GREEK.TXT 8bit_tab_to_h 241 ./8bit_tab_to_h MacGreek mac_greek < $< 242 243mac_turkish.h : $(TABLESDIR)/jdk-1.1.7b/MAC-TURKISH.TXT 8bit_tab_to_h 244 ./8bit_tab_to_h MacTurkish mac_turkish < $< 245 246mac_hebrew.h : $(TABLESDIR)/jdk-1.1.7b/MAC-HEBREW.TXT 8bit_tab_to_h 247 ./8bit_tab_to_h MacHebrew mac_hebrew < $< 248 249mac_arabic.h : $(TABLESDIR)/jdk-1.1.7b/MAC-ARABIC.TXT 8bit_tab_to_h 250 ./8bit_tab_to_h MacArabic mac_arabic < $< 251 252mac_thai.h : $(TABLESDIR)/jdk-1.1.7b/MAC-THAI.TXT 8bit_tab_to_h 253 ./8bit_tab_to_h MacThai mac_thai < $< 254 255hp_roman8.h : $(TABLESDIR)/glibc-2.1-iconv/HP-ROMAN8.TXT 8bit_tab_to_h 256 ./8bit_tab_to_h HP-ROMAN8 hp_roman8 < $< 257 258nextstep.h : $(TABLESDIR)/clisp/NEXTSTEP.TXT 8bit_tab_to_h 259 ./8bit_tab_to_h NEXTSTEP nextstep < $< 260 261armscii_8.h : $(TABLESDIR)/glibc-2.2.90-iconv/ARMSCII-8.TXT 8bit_tab_to_h 262 (echo '#' ; cat $<) | ./8bit_tab_to_h ARMSCII-8 armscii_8 263 264georgian_academy.h : $(TABLESDIR)/csets-1.6/GEO-ITA.TXT 8bit_tab_to_h 265 ./8bit_tab_to_h GEORGIAN-ACADEMY georgian_academy < $< 266 267georgian_ps.h : $(TABLESDIR)/csets-1.6/GEO-PS.TXT 8bit_tab_to_h 268 ./8bit_tab_to_h GEORGIAN-PS georgian_ps < $< 269 270koi8_t.h : $(TABLESDIR)/glibc-2.2.90-iconv/KOI8-T.TXT 271 (echo '#' ; cat $<) | ./8bit_tab_to_h KOI8-T koi8_t 272 273pt154.h : $(TABLESDIR)/IANA/PTCP154.TXT 274 ./8bit_tab_to_h PT154 pt154 < $< 275 276mulelao.h : $(TABLESDIR)/csets-new/MULELAO1.TXT 8bit_tab_to_h 277 ./8bit_tab_to_h MULELAO-1 mulelao < $< 278 279cp1133.h : $(TABLESDIR)/csets-new/CP1133.TXT 8bit_tab_to_h 280 ./8bit_tab_to_h IBM-CP1133 cp1133 < $< 281 282tis620.h : $(TABLESDIR)/glibc-2.1-iconv/TIS-620.TXT 8bit_tab_to_h 283 ./8bit_tab_to_h TIS620.2533-1 tis620 < $< 284 285cp874.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP874.TXT 8bit_tab_to_h 286 ./8bit_tab_to_h CP874 cp874 < $< 287 288viscii.h : $(TABLESDIR)/csets-1.6/VISCII.TXT 8bit_tab_to_h 289 ./8bit_tab_to_h VISCII1.1-1 viscii < $< 290 291tcvn.h : $(TABLESDIR)/csets-1.6/VN5712-1.TXT 8bit_tab_to_h 292 ./8bit_tab_to_h TCVN-5712 tcvn < $< 293 294jisx0201.h : $(TABLESDIR)/clisp/JIS_X0201.TXT 8bit_tab_to_h 295 ./8bit_tab_to_h JISX0201.1976-0 jisx0201 < $< 296 297# We use modified JISX0208 and JISX0212 tables. Why? 298# Hironori Sakamoto and Tomohiro Kubota explain that 299# - EUC-JP and SHIFT_JIS contain JISX0208 exactly, 300# - Their round-trip conversion to Unicode and back must be the identity, 301# - Conversions between EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP must behave 302# as if no Unicode conversion was involved, 303# - When JISX0208 is used as a CES (i.e. combined with ASCII) its mapping of 304# REVERSE SOLIDUS becomes a FULLWIDTH REVERSE SOLIDUS, apparently because 305# round-trip conversion stability is more important than a particular glyph. 306# Only with CCS the character is a REVERSE SOLIDUS. 307# As a consequence, we use FULLWIDTH REVERSE SOLIDUS in EUC-JP's JISX0208 part, 308# and for consistency also in SHIFT_JIS and ISO-2022-JP, i.e. everywhere. 309# JISX0208 never occurs as a CCS in practice. Similarly with JISX0212. 310 311# Unicode.org maps 0x2140 to U+005C. We map it to U+FF3C. 312jisx0208.h : $(TABLESDIR)/unicode.org-mappings/EASTASIA/JIS/JIS0208.TXT cjk_tab_to_h 313 sed -e 's,^0x....[ ]*\(0x....[ ]*0x.....*\)$$,\1,' < $< | sed -e 's,\([ ]\)0x005C,\10xFF3C,' | ./cjk_tab_to_h JISX0208.1990-0 jisx0208 > $@ 314 315# Unicode.org maps 0x2237 to U+007E. We map it to U+FF5E. 316jisx0212.h : $(TABLESDIR)/unicode.org-mappings/EASTASIA/JIS/JIS0212.TXT cjk_tab_to_h 317 sed -e 's,\([ ]\)0x007E,\10xFF5E,' < $< | ./cjk_tab_to_h JISX0212.1990-0 jisx0212 > $@ 318 319cp932ext.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP932.TXT cjk_tab_to_h 320 (echo '#' ; grep '^0x\(87\|E[D-F]\|F[0-9A-F]\)[0-9A-F][0-9A-F]' < $< ) | ./cjk_tab_to_h 'CP932 extensions' cp932ext > $@ 321 322gb2312.h : $(TABLESDIR)/unicode.org-mappings/EASTASIA/GB/GB2312.TXT cjk_tab_to_h 323 ./cjk_tab_to_h GB2312.1980-0 gb2312 < $< > $@ 324 325isoir165ext.h : $(TABLESDIR)/csets-new/ISO-IR-165-additions.TXT cjk_tab_to_h 326 (echo '#' ; grep -v '^0x2[8A]' < $<) | ./cjk_tab_to_h 'ISO-IR-165 extensions' isoir165ext > $@ 327 328gb12345ext.h : $(TABLESDIR)/unicode.org-mappings/EASTASIA/GB/GB2312.TXT $(TABLESDIR)/unicode.org-mappings/EASTASIA/GB/GB12345-FIXED.TXT $(TABLESDIR)/csets-new/GB12345-more.TXT cjk_tab_to_h 329 (echo '#' ; sed -e '/^0x..[ ]*#UNDEFINED/d' -e 's/#.*$$//' -e '/^[ ]*$$/d' $(TABLESDIR)/unicode.org-mappings/EASTASIA/GB/GB2312.TXT > tmp1.TXT ; sed -e '/^0x..[ ]*#UNDEFINED/d' -e 's/#.*$$//' -e '/^[ ]*$$/d' $(TABLESDIR)/unicode.org-mappings/EASTASIA/GB/GB12345-FIXED.TXT > tmp2.TXT ; diff tmp1.TXT tmp2.TXT | grep '^> ' | sed -e 's,^> ,,' ; cat $(TABLESDIR)/csets-new/GB12345-more.TXT ) | ./cjk_tab_to_h 'GB/T 12345.1990-0 extensions' gb12345ext > $@ && rm -f tmp1.TXT tmp2.TXT 330 331gbkext1.h : GBKext.TXT cjk_tab_to_h 332 (echo '#' ; grep '^0x\([89].\|A0\)' < GBKext.TXT) | ./cjk_tab_to_h 'GBK/3 extensions' gbkext1 > $@ 333 334gbkext2.h : GBKext.TXT cjk_tab_to_h 335 (echo '#' ; grep '^0x\(A[1-9A-F]\|[B-F][0-9A-F]\)\([4-9].\|A0\)' < GBKext.TXT) | ./cjk_tab_to_h 'GBK/4 and GBK/5 extensions' gbkext2 > $@ 336 337gbkext_inv.h : GBKext.TXT cjk_tab_to_h 338 (echo '#' ; grep '^0x\([89].\|A0\)' < GBKext.TXT ; grep '^0x\(A[1-9A-F]\|[B-F][0-9A-F]\)\([4-9].\|A0\)' < GBKext.TXT) | ./cjk_tab_to_h 'GBK extensions' gbkext_inv > $@ 339 340cp936ext.h : GBKext.TXT cjk_tab_to_h 341 (echo '#' ; grep '^0xA[1-9][B-F].' < GBKext.TXT) | ./cjk_tab_to_h 'CP936 extensions' cp936ext > $@ 342 343GBKext.TXT : $(TABLESDIR)/unicode.org-mappings/EASTASIA/GB/GB2312.TXT $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP936.TXT 344 sed -e 's,^0x2,0xA,' -e 's,^0x3,0xB,' -e 's,^0x4,0xC,' -e 's,^0x5,0xD,' -e 's,^0x6,0xE,' -e 's,^0x7,0xF,' -e 's,^0x\(..\)2,0x\1A,' -e 's,^0x\(..\)3,0x\1B,' -e 's,^0x\(..\)4,0x\1C,' -e 's,^0x\(..\)5,0x\1D,' -e 's,^0x\(..\)6,0x\1E,' -e 's,^0x\(..\)7,0x\1F,' $(TABLESDIR)/unicode.org-mappings/EASTASIA/GB/GB2312.TXT > tmpEUCCN.TXT ; sed -e '/^0x..[ ]*#UNDEFINED/d' -e 's/#.*$$//' -e '/^[ ]*$$/d' tmpEUCCN.TXT > tmp1.TXT ; sed -e '/^0x..[ ]/d' -e 's/#.*$$//' -e '/^[ ]*$$/d' $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP936.TXT > tmp2.TXT ; diff -c1 tmp1.TXT tmp2.TXT | grep '^+ ' | sed -e 's,^+ ,,' > $@ && rm -f tmpEUCCN.TXT tmp1.TXT tmp2.TXT 345 346gb18030ext.h : GB18030ext.TXT cjk_tab_to_h 347 (echo '#' ; cat GB18030ext.TXT) | ./cjk_tab_to_h 'GB18030 two-byte extension' gb18030ext > $@ 348 349GB18030ext.TXT : $(TABLESDIR)/glibc-2.2.2-iconv/GB18030.TXT $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP936.TXT 350 cat $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP936.TXT | sed -e 's/[ ]*#.*$$//' | grep '^0x[0-9A-F]* 0x....$$' > tmpGBK.TXT ; diff tmpGBK.TXT $(TABLESDIR)/glibc-2.2.2-iconv/GB18030.TXT | grep '^> 0x.... 0x....$$' | sed -e 's/^> //' > $@ && rm -f tmpGBK.TXT 351 352gb18030uni.h : GB18030uni.TXT cjk_tab_to_h 353 ./cjk_tab_to_h 'GB18030 four-byte extension' gb18030uni < GB18030uni.TXT > $@ 354 355GB18030uni.TXT : $(TABLESDIR)/gb18030/filled-GB18030.TXT 356 grep '^0x........ 0x....$$' < $(TABLESDIR)/gb18030/filled-GB18030.TXT > $@ 357 358cns11643_1.h : $(TABLESDIR)/csets-new/CNS11643-Unicode32.TXT cjk_tab_to_h 359 grep '^\(#\|0x1\)' < $< | sed -e 's,^0x1,0x,' | ./cjk_tab_to_h 'CNS 11643-1992 plane 1' cns11643_1 > $@ 360 361cns11643_2.h : $(TABLESDIR)/csets-new/CNS11643-Unicode32.TXT cjk_tab_to_h 362 grep '^\(#\|0x2\)' < $< | sed -e 's,^0x2,0x,' | ./cjk_tab_to_h 'CNS 11643-1992 plane 2' cns11643_2 > $@ 363 364cns11643_3.h : $(TABLESDIR)/csets-new/CNS11643-Unicode32.TXT cjk_tab_to_h 365 grep '^\(#\|0x3\)' < $< | sed -e 's,^0x3,0x,' | ./cjk_tab_to_h 'CNS 11643-1992 plane 3' cns11643_3 > $@ 366 367cns11643_4a.h : $(TABLESDIR)/csets-new/CNS11643-Unicode32.TXT cjk_tab_to_h 368 grep '^\(#\|0x4[0-3]\)' < $< | sed -e 's,^0x4,0x,' | ./cjk_tab_to_h 'CNS 11643-1992 plane 4 part a' cns11643_4a > $@ 369 370cns11643_4b.h : $(TABLESDIR)/csets-new/CNS11643-Unicode32.TXT cjk_tab_to_h 371 grep '^\(#\|0x4[4-7]\)' < $< | sed -e 's,^0x4,0x,' | ./cjk_tab_to_h 'CNS 11643-1992 plane 4 part b' cns11643_4b > $@ 372 373cns11643_5.h : $(TABLESDIR)/csets-new/CNS11643-Unicode32.TXT cjk_tab_to_h 374 grep '^\(#\|0x5\)' < $< | sed -e 's,^0x5,0x,' | ./cjk_tab_to_h 'CNS 11643-1992 plane 5' cns11643_5 > $@ 375 376cns11643_6.h : $(TABLESDIR)/csets-new/CNS11643-Unicode32.TXT cjk_tab_to_h 377 grep '^\(#\|0x6\)' < $< | sed -e 's,^0x6,0x,' | ./cjk_tab_to_h 'CNS 11643-1992 plane 6' cns11643_6 > $@ 378 379cns11643_7.h : $(TABLESDIR)/csets-new/CNS11643-Unicode32.TXT cjk_tab_to_h 380 grep '^\(#\|0x7\)' < $< | sed -e 's,^0x7,0x,' | ./cjk_tab_to_h 'CNS 11643-1992 plane 7' cns11643_7 > $@ 381 382cns11643_15.h : $(TABLESDIR)/csets-new/CNS11643-Unicode32.TXT cjk_tab_to_h 383 grep '^\(#\|0xF\)' < $< | sed -e 's,^0xF,0x,' | ./cjk_tab_to_h 'CNS 11643-1992 plane 15' cns11643_15 > $@ 384 385cns11643_inv.h : $(TABLESDIR)/csets-new/CNS11643-Unicode32.TXT cjk_tab_to_h 386 ./cjk_tab_to_h 'CNS 11643-1992 planes 1-7, CNS 11643-1986 plane 15' cns11643_inv < $< > $@ 387 388big5.h : $(TABLESDIR)/unicode.org-mappings/EASTASIA/OTHER/BIG5.TXT cjk_tab_to_h 389 ./cjk_tab_to_h BIG5 big5 < $< > $@ 390 391cp950ext.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/WINDOWS/CP950.TXT cjk_tab_to_h 392 (echo '#' ; grep '^0xF9\(D[6-9A-F]\|[EF][0-9A-F]\)' < $< ) | ./cjk_tab_to_h 'CP950 extensions' cp950ext > $@ 393 394hkscs1999.h : $(TABLESDIR)/big5hkscs/HKSCS-1999_2006.TXT cjk_tab_to_h 395 (echo '#' ; grep -v , $<) | ./cjk_tab_to_h HKSCS:1999 hkscs1999 > $@ 396 397hkscs2001.h : $(TABLESDIR)/big5hkscs/HKSCS-2001_2006-DELTA.TXT cjk_tab_to_h 398 (echo '#' ; grep -v , $<) | ./cjk_tab_to_h HKSCS:2001 hkscs2001 > $@ 399 400hkscs2004.h : $(TABLESDIR)/big5hkscs/HKSCS-2004_2006-DELTA.TXT cjk_tab_to_h 401 (echo '#' ; grep -v , $<) | ./cjk_tab_to_h HKSCS:2004 hkscs2004 > $@ 402 403# We use a modified KSC 5601 = KSX 1001 table. Jungshik Shin <jshin@mailaps.org> 404# reports that Prof. GIM Geongseog (KIM Keyongseok) <gimgs@asadal.cs.pusan.ac.kr> 405# (who represents South Korea in ISO/IEC JTC1 SC2/WG2 and SC22/WG20) says that 406# these two characters were added to KSX 1001 in December 1998, and one more 407# (Korean zip code sign) is likely to follow in 2002. 408ksc5601.h : $(TABLESDIR)/unicode.org-mappings/EASTASIA/KSC/KSC5601.TXT cjk_tab_to_h 409 (cat $< ; echo '0xA2E6 0x20AC'; echo '0xA2E7 0x00AE') | ./cjk_tab_to_h KSC5601.1987-0 ksc5601 > $@ 410 411uhc_1.h : $(TABLESDIR)/unicode.org-mappings/EASTASIA/KSC/KSC5601.TXT cjk_tab_to_h 412 (echo '#' ; grep '^0x\([8-9]\|A0\)' < $< ) | ./cjk_tab_to_h 'Unified Hangul Code part 1' uhc_1 > $@ 413 414uhc_2.h : $(TABLESDIR)/unicode.org-mappings/EASTASIA/KSC/KSC5601.TXT cjk_tab_to_h 415 (echo '#' ; grep '^0x\(A[1-9A-F]\|[B-F][0-9A-F]\)\([0-9]\|A0\)' < $< ) | ./cjk_tab_to_h 'Unified Hangul Code part 2' uhc_2 > $@ 416 417johab_hangul.h : $(TABLESDIR)/unicode.org-mappings/EASTASIA/KSC/JOHAB.TXT cjk_tab_to_h 418 (echo '#' ; grep '^0x\([8-C]...\|D[0-7]..\)' < $< ) | ./cjk_tab_to_h 'JOHAB Hangul' johab_hangul > $@ 419 420 421cp856.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/CP856.TXT 8bit_tab_to_h 422 ./8bit_tab_to_h CP856 cp856 < $< 423 424cp922.h : $(TABLESDIR)/aix-4.3.2/IBM-922.TXT 8bit_tab_to_h 425 (echo '#' ; cat $<) | ./8bit_tab_to_h CP922 cp922 426 427cp1046.h : $(TABLESDIR)/aix-4.3.2/IBM-1046.TXT 8bit_tab_to_h 428 (echo '#' ; cat $<) | ./8bit_tab_to_h CP1046 cp1046 429 430cp1124.h : $(TABLESDIR)/aix-4.3.2/IBM-1124.TXT 8bit_tab_to_h 431 (echo '#' ; cat $<) | ./8bit_tab_to_h CP1124 cp1124 432 433cp1129.h : $(TABLESDIR)/aix-4.3.2/IBM-1129.TXT 8bit_tab_to_h 434 (echo '#' ; cat $<) | ./8bit_tab_to_h CP1129 cp1129 435 436cp1161.h : $(TABLESDIR)/glibc-2.2.90-iconv/IBM1161.TXT 437 (echo '#' ; cat $(TABLESDIR)/glibc-2.2-iconv/ASCII.TXT ; grep -v '^0x[0-7]' $<) | ./8bit_tab_to_h CP1161 cp1161 438 439cp1162.h : $(TABLESDIR)/glibc-2.2.90-iconv/IBM1162.TXT 440 (echo '#' ; cat $<) | ./8bit_tab_to_h CP1162 cp1162 441 442cp1163.h : $(TABLESDIR)/glibc-2.2.90-iconv/IBM1163.TXT 443 (echo '#' ; cat $<) | ./8bit_tab_to_h CP1163 cp1163 444 445 446cp437.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP437.TXT 8bit_tab_to_h 447 ./8bit_tab_to_h CP437 cp437 < $< 448 449cp737.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP737.TXT 8bit_tab_to_h 450 ./8bit_tab_to_h CP737 cp737 < $< 451 452cp775.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP775.TXT 8bit_tab_to_h 453 ./8bit_tab_to_h CP775 cp775 < $< 454 455cp852.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP852.TXT 8bit_tab_to_h 456 ./8bit_tab_to_h CP852 cp852 < $< 457 458cp853.h : $(TABLESDIR)/other/CP853.TXT 8bit_tab_to_h 459 (echo '#'; cat $<) | ./8bit_tab_to_h CP853 cp853 460 461cp855.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP855.TXT 8bit_tab_to_h 462 ./8bit_tab_to_h CP855 cp855 < $< 463 464cp857.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP857.TXT 8bit_tab_to_h 465 ./8bit_tab_to_h CP857 cp857 < $< 466 467cp858.h : $(TABLESDIR)/windows-2000/CP858.TXT 8bit_tab_to_h 468 (echo '#' ; cat $<) | ./8bit_tab_to_h CP858 cp858 469 470cp860.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP860.TXT 8bit_tab_to_h 471 ./8bit_tab_to_h CP860 cp860 < $< 472 473cp861.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP861.TXT 8bit_tab_to_h 474 ./8bit_tab_to_h CP861 cp861 < $< 475 476cp863.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP863.TXT 8bit_tab_to_h 477 ./8bit_tab_to_h CP863 cp863 < $< 478 479cp864.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP864.TXT 8bit_tab_to_h 480 ./8bit_tab_to_h CP864 cp864 < $< 481 482cp865.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP865.TXT 8bit_tab_to_h 483 ./8bit_tab_to_h CP865 cp865 < $< 484 485cp869.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MICSFT/PC/CP869.TXT 8bit_tab_to_h 486 ./8bit_tab_to_h CP869 cp869 < $< 487 488cp1125.h : $(TABLESDIR)/csets-new/CP1125.TXT 8bit_tab_to_h 489 ./8bit_tab_to_h CP1125 cp1125 < $< 490 491 492jisx0213.h : JISX0213.TXT cjk_tab_to_h 493 ./cjk_tab_to_h JISX0213:2004 jisx0213 < $< > $@ 494 495tds565.h : $(TABLESDIR)/recode-cvs/TDS565.TXT 8bit_tab_to_h 496 (echo '#'; cat $<) | ./8bit_tab_to_h TDS565 tds565 > $@ 497 498atarist.h : $(TABLESDIR)/unicode.org-mappings/VENDORS/MISC/ATARIST.TXT 499 ./8bit_tab_to_h 'Atari ST' atarist < $< > $@ 500 501riscos1.h : $(TABLESDIR)/recode-cvs/RISCOS-LATIN1.TXT 8bit_tab_to_h 502 (echo '#'; cat $<) | ./8bit_tab_to_h RISCOS-LATIN1 riscos1 > $@ 503 504 505cjk_variants.h : $(TABLESDIR)/yasuoka/UniVariants cjk_variants 506 ./cjk_variants < $< > $@ 507 508 5098bit_tab_to_h : 8bit_tab_to_h.c 510 gcc -O -Wall -g $< -o $@ 511 512cjk_tab_to_h : cjk_tab_to_h.c 513 gcc -O -Wall -g $< -o $@ 514 515cjk_variants : cjk_variants.c 516 gcc -O -Wall -g $< -o $@ 517 518 519clean : force 520 rm -f 8bit_tab_to_h cjk_tab_to_h cjk_variants $(ALL) GBKext.TXT 521 522force : 523 524