1 | /* Builtin transformations. |
2 | Copyright (C) 1997-2016 Free Software Foundation, Inc. |
3 | This file is part of the GNU C Library. |
4 | Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. |
5 | |
6 | The GNU C Library is free software; you can redistribute it and/or |
7 | modify it under the terms of the GNU Lesser General Public |
8 | License as published by the Free Software Foundation; either |
9 | version 2.1 of the License, or (at your option) any later version. |
10 | |
11 | The GNU C Library is distributed in the hope that it will be useful, |
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
14 | Lesser General Public License for more details. |
15 | |
16 | You should have received a copy of the GNU Lesser General Public |
17 | License along with the GNU C Library; if not, see |
18 | <http://www.gnu.org/licenses/>. */ |
19 | |
20 | /* All encoding named must be in upper case. There must be no extra |
21 | spaces. */ |
22 | |
23 | BUILTIN_ALIAS ("UCS4//" , "ISO-10646/UCS4/" ) |
24 | BUILTIN_ALIAS ("UCS-4//" , "ISO-10646/UCS4/" ) |
25 | BUILTIN_ALIAS ("UCS-4BE//" , "ISO-10646/UCS4/" ) |
26 | BUILTIN_ALIAS ("CSUCS4//" , "ISO-10646/UCS4/" ) |
27 | BUILTIN_ALIAS ("ISO-10646//" , "ISO-10646/UCS4/" ) |
28 | BUILTIN_ALIAS ("10646-1:1993//" , "ISO-10646/UCS4/" ) |
29 | BUILTIN_ALIAS ("10646-1:1993/UCS4/" , "ISO-10646/UCS4/" ) |
30 | BUILTIN_ALIAS ("OSF00010104//" , "ISO-10646/UCS4/" ) /* level 1 */ |
31 | BUILTIN_ALIAS ("OSF00010105//" , "ISO-10646/UCS4/" ) /* level 2 */ |
32 | BUILTIN_ALIAS ("OSF00010106//" , "ISO-10646/UCS4/" ) /* level 3 */ |
33 | |
34 | BUILTIN_TRANSFORMATION ("INTERNAL" , "ISO-10646/UCS4/" , 1, "=INTERNAL->ucs4" , |
35 | __gconv_transform_internal_ucs4, NULL, 4, 4, 4, 4) |
36 | BUILTIN_TRANSFORMATION ("ISO-10646/UCS4/" , "INTERNAL" , 1, "=ucs4->INTERNAL" , |
37 | __gconv_transform_ucs4_internal, NULL, 4, 4, 4, 4) |
38 | |
39 | BUILTIN_TRANSFORMATION ("INTERNAL" , "UCS-4LE//" , 1, "=INTERNAL->ucs4le" , |
40 | __gconv_transform_internal_ucs4le, NULL, 4, 4, 4, 4) |
41 | BUILTIN_TRANSFORMATION ("UCS-4LE//" , "INTERNAL" , 1, "=ucs4le->INTERNAL" , |
42 | __gconv_transform_ucs4le_internal, NULL, 4, 4, 4, 4) |
43 | |
44 | BUILTIN_ALIAS ("WCHAR_T//" , "INTERNAL" ) |
45 | |
46 | BUILTIN_ALIAS ("UTF8//" , "ISO-10646/UTF8/" ) |
47 | BUILTIN_ALIAS ("UTF-8//" , "ISO-10646/UTF8/" ) |
48 | BUILTIN_ALIAS ("ISO-IR-193//" , "ISO-10646/UTF8/" ) |
49 | BUILTIN_ALIAS ("OSF05010001//" , "ISO-10646/UTF8/" ) |
50 | BUILTIN_ALIAS ("ISO-10646/UTF-8/" , "ISO-10646/UTF8/" ) |
51 | |
52 | BUILTIN_TRANSFORMATION ("INTERNAL" , "ISO-10646/UTF8/" , 1, "=INTERNAL->utf8" , |
53 | __gconv_transform_internal_utf8, NULL, 4, 4, 1, 6) |
54 | |
55 | BUILTIN_TRANSFORMATION ("ISO-10646/UTF8/" , "INTERNAL" , 1, "=utf8->INTERNAL" , |
56 | __gconv_transform_utf8_internal, __gconv_btwoc_ascii, |
57 | 1, 6, 4, 4) |
58 | |
59 | BUILTIN_ALIAS ("UCS2//" , "ISO-10646/UCS2/" ) |
60 | BUILTIN_ALIAS ("UCS-2//" , "ISO-10646/UCS2/" ) |
61 | BUILTIN_ALIAS ("OSF00010100//" , "ISO-10646/UCS2/" ) /* level 1 */ |
62 | BUILTIN_ALIAS ("OSF00010101//" , "ISO-10646/UCS2/" ) /* level 2 */ |
63 | BUILTIN_ALIAS ("OSF00010102//" , "ISO-10646/UCS2/" ) /* level 3 */ |
64 | |
65 | BUILTIN_TRANSFORMATION ("ISO-10646/UCS2/" , "INTERNAL" , 1, "=ucs2->INTERNAL" , |
66 | __gconv_transform_ucs2_internal, NULL, 2, 2, 4, 4) |
67 | |
68 | BUILTIN_TRANSFORMATION ("INTERNAL" , "ISO-10646/UCS2/" , 1, "=INTERNAL->ucs2" , |
69 | __gconv_transform_internal_ucs2, NULL, 4, 4, 2, 2) |
70 | |
71 | |
72 | BUILTIN_ALIAS ("ANSI_X3.4//" , "ANSI_X3.4-1968//" ) |
73 | BUILTIN_ALIAS ("ISO-IR-6//" , "ANSI_X3.4-1968//" ) |
74 | BUILTIN_ALIAS ("ANSI_X3.4-1986//" , "ANSI_X3.4-1968//" ) |
75 | BUILTIN_ALIAS ("ISO_646.IRV:1991//" , "ANSI_X3.4-1968//" ) |
76 | BUILTIN_ALIAS ("ASCII//" , "ANSI_X3.4-1968//" ) |
77 | BUILTIN_ALIAS ("ISO646-US//" , "ANSI_X3.4-1968//" ) |
78 | BUILTIN_ALIAS ("US-ASCII//" , "ANSI_X3.4-1968//" ) |
79 | BUILTIN_ALIAS ("US//" , "ANSI_X3.4-1968//" ) |
80 | BUILTIN_ALIAS ("IBM367//" , "ANSI_X3.4-1968//" ) |
81 | BUILTIN_ALIAS ("CP367//" , "ANSI_X3.4-1968//" ) |
82 | BUILTIN_ALIAS ("CSASCII//" , "ANSI_X3.4-1968//" ) |
83 | BUILTIN_ALIAS ("OSF00010020//" , "ANSI_X3.4-1968//" ) |
84 | |
85 | BUILTIN_TRANSFORMATION ("ANSI_X3.4-1968//" , "INTERNAL" , 1, "=ascii->INTERNAL" , |
86 | __gconv_transform_ascii_internal, __gconv_btwoc_ascii, |
87 | 4, 4, 1, 1) |
88 | |
89 | BUILTIN_TRANSFORMATION ("INTERNAL" , "ANSI_X3.4-1968//" , 1, "=INTERNAL->ascii" , |
90 | __gconv_transform_internal_ascii, NULL, 4, 4, 1, 1) |
91 | |
92 | |
93 | #if BYTE_ORDER == BIG_ENDIAN |
94 | BUILTIN_ALIAS ("UNICODEBIG//" , "ISO-10646/UCS2/" ) |
95 | BUILTIN_ALIAS ("UCS-2BE//" , "ISO-10646/UCS2/" ) |
96 | |
97 | BUILTIN_ALIAS ("UCS-2LE//" , "UNICODELITTLE//" ) |
98 | |
99 | BUILTIN_TRANSFORMATION ("UNICODELITTLE//" , "INTERNAL" , 1, |
100 | "=ucs2reverse->INTERNAL" , |
101 | __gconv_transform_ucs2reverse_internal, NULL, |
102 | 2, 2, 4, 4) |
103 | |
104 | BUILTIN_TRANSFORMATION ("INTERNAL" , "UNICODELITTLE//" , 1, |
105 | "=INTERNAL->ucs2reverse" , |
106 | __gconv_transform_internal_ucs2reverse, NULL, |
107 | 4, 4, 2, 2) |
108 | #else |
109 | BUILTIN_ALIAS ("UNICODELITTLE//" , "ISO-10646/UCS2/" ) |
110 | BUILTIN_ALIAS ("UCS-2LE//" , "ISO-10646/UCS2/" ) |
111 | |
112 | BUILTIN_ALIAS ("UCS-2BE//" , "UNICODEBIG//" ) |
113 | |
114 | BUILTIN_TRANSFORMATION ("UNICODEBIG//" , "INTERNAL" , 1, |
115 | "=ucs2reverse->INTERNAL" , |
116 | __gconv_transform_ucs2reverse_internal, NULL, |
117 | 2, 2, 4, 4) |
118 | |
119 | BUILTIN_TRANSFORMATION ("INTERNAL" , "UNICODEBIG//" , 1, |
120 | "=INTERNAL->ucs2reverse" , |
121 | __gconv_transform_internal_ucs2reverse, NULL, |
122 | 4, 4, 2, 2) |
123 | #endif |
124 | |