# Copyright (c) 1999-2007, International Business Machines Corporation and
# others. All Rights Reserved.
# A list of UCM's to build for core MIME/Unix/Windows encodings

# Note: A number of encodings are handled with purely algorithmic converters,
# without any mapping tables:
# US-ASCII, ISO 8859-1, UTF-7/8/16/32, SCSU

# Listed here:

# ISO 8859-2..9, 15
# Windows-125x
# EUC-CN, GBK (Windows cp936), GB 18030
# Big5 (Windows cp950)
# SJIS (Windows cp932), EUC-JP
# EUC-KR, KS C 5601, Windows cp949

UCM_SOURCE_CORE=ibm-912_P100-1995.ucm ibm-913_P100-2000.ucm\
ibm-914_P100-1995.ucm ibm-915_P100-1995.ucm ibm-5012_P100-1999.ucm\
ibm-920_P100-1995.ucm ibm-923_P100-1998.ucm ibm-1089_P100-1995.ucm\
ibm-4909_P100-1999.ucm\
ibm-5346_P100-1998.ucm ibm-5347_P100-1998.ucm ibm-5348_P100-1997.ucm\
ibm-5349_P100-1998.ucm ibm-5350_P100-1998.ucm ibm-9447_P100-2002.ucm\
ibm-5352_P100-1998.ucm ibm-9449_P100-2002.ucm ibm-5354_P100-1998.ucm\
ibm-1383_P110-1999.ucm ibm-1386_P100-2001.ucm gb18030.ucm\
ibm-1373_P100-2002.ucm\
ibm-943_P15A-2003.ucm ibm-33722_P12A_P12A-2004_U2.ucm\
ibm-970_P110_P110-2006_U2.ucm ibm-949_P11A-1999.ucm ibm-1363_P11B-1998.ucm
