xref: /illumos-gate/usr/src/lib/iconv_modules/utf-8/common/utf8_to_sb.h (revision 16d8656330ae5622ec32e5007f62145ebafdc50f)
1 /*
2  * CDDL HEADER START
3  *
4  * The contents of this file are subject to the terms of the
5  * Common Development and Distribution License (the "License").
6  * You may not use this file except in compliance with the License.
7  *
8  * You can obtain a copy of the license at src/OPENSOLARIS.LICENSE
9  * or http://www.opensolaris.org/os/licensing.
10  * See the License for the specific language governing permissions
11  * and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL HEADER in each
14  * file and include the License file at src/OPENSOLARIS.LICENSE.
15  * If applicable, add the following below this CDDL HEADER, with the
16  * fields enclosed by brackets "[]" replaced with your own identifying
17  * information: Portions Copyright [yyyy] [name of copyright owner]
18  *
19  * CDDL HEADER END
20  */
21 /*
22  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
23  * Use is subject to license terms.
24  */
25 
26 #ifndef	UTF8_TO_SB_H
27 #define	UTF8_TO_SB_H
28 
29 
30 #include "common_defs.h"
31 
32 
33 /*
34  * The values in u8 data field is a UTF-8 byte streams saved in uint_t and
35  * with that data field, we only cover characters from U+0000 to U+10 FFFF.
36  *
37  * IMPORTANT:
38  * Since we are using binary search on the table, especially, on u8 data
39  * field, the table should be sorted by ascending order on u8 data field.
40  */
41 static const to_sb_table_component_t u8_sb_tbl[] = {
42 #if defined(US_ASCII)
43 #include "tbls/utf8_to_us-ascii.tbl"
44 
45 #elif defined(ISO_8859_1)
46 #include "tbls/utf8_to_iso-8859-1.tbl"
47 
48 #elif defined(ISO_8859_2)
49 #include "tbls/utf8_to_iso-8859-2.tbl"
50 
51 #elif defined(ISO_8859_3)
52 #include "tbls/utf8_to_iso-8859-3.tbl"
53 
54 #elif defined(ISO_8859_4)
55 #include "tbls/utf8_to_iso-8859-4.tbl"
56 
57 #elif defined(ISO_8859_5)
58 #include "tbls/utf8_to_iso-8859-5.tbl"
59 
60 #elif defined(ISO_8859_6)
61 #include "tbls/utf8_to_iso-8859-6.tbl"
62 
63 #elif defined(ISO_8859_7)
64 #include "tbls/utf8_to_iso-8859-7.tbl"
65 
66 #elif defined(ISO_8859_8)
67 #include "tbls/utf8_to_iso-8859-8.tbl"
68 
69 #elif defined(ISO_8859_9)
70 #include "tbls/utf8_to_iso-8859-9.tbl"
71 
72 #elif defined(ISO_8859_10)
73 #include "tbls/utf8_to_iso-8859-10.tbl"
74 
75 #elif defined(ISO_8859_13)
76 #include "tbls/utf8_to_iso-8859-13.tbl"
77 
78 #elif defined(ISO_8859_14)
79 #include "tbls/utf8_to_iso-8859-14.tbl"
80 
81 #elif defined(ISO_8859_15)
82 #include "tbls/utf8_to_iso-8859-15.tbl"
83 
84 #elif defined(ISO_8859_16)
85 #include "tbls/utf8_to_iso-8859-16.tbl"
86 
87 #elif defined(KOI8_R)
88 #include "tbls/utf8_to_koi8-r.tbl"
89 
90 #elif defined(KOI8_U)
91 #include "tbls/utf8_to_koi8-u.tbl"
92 
93 #elif defined(PTCP154)
94 #include "tbls/utf8_to_ptcp154.tbl"
95 
96 #elif defined(CP437)
97 #include "tbls/utf8_to_cp437.tbl"
98 
99 #elif defined(CP720)
100 #include "tbls/utf8_to_cp720.tbl"
101 
102 #elif defined(CP737)
103 #include "tbls/utf8_to_cp737.tbl"
104 
105 #elif defined(CP775)
106 #include "tbls/utf8_to_cp775.tbl"
107 
108 #elif defined(CP850)
109 #include "tbls/utf8_to_cp850.tbl"
110 
111 #elif defined(CP852)
112 #include "tbls/utf8_to_cp852.tbl"
113 
114 #elif defined(CP855)
115 #include "tbls/utf8_to_cp855.tbl"
116 
117 #elif defined(CP857)
118 #include "tbls/utf8_to_cp857.tbl"
119 
120 #elif defined(CP860)
121 #include "tbls/utf8_to_cp860.tbl"
122 
123 #elif defined(CP861)
124 #include "tbls/utf8_to_cp861.tbl"
125 
126 #elif defined(CP862)
127 #include "tbls/utf8_to_cp862.tbl"
128 
129 #elif defined(CP863)
130 #include "tbls/utf8_to_cp863.tbl"
131 
132 #elif defined(CP864)
133 #include "tbls/utf8_to_cp864.tbl"
134 
135 #elif defined(CP865)
136 #include "tbls/utf8_to_cp865.tbl"
137 
138 #elif defined(CP866)
139 #include "tbls/utf8_to_cp866.tbl"
140 
141 #elif defined(CP869)
142 #include "tbls/utf8_to_cp869.tbl"
143 
144 #elif defined(CP874)
145 #include "tbls/utf8_to_cp874.tbl"
146 
147 #elif defined(CP1250)
148 #include "tbls/utf8_to_cp1250.tbl"
149 
150 #elif defined(CP1251)
151 #include "tbls/utf8_to_cp1251.tbl"
152 
153 #elif defined(CP1252)
154 #include "tbls/utf8_to_cp1252.tbl"
155 
156 #elif defined(CP1253)
157 #include "tbls/utf8_to_cp1253.tbl"
158 
159 #elif defined(CP1254)
160 #include "tbls/utf8_to_cp1254.tbl"
161 
162 #elif defined(CP1255)
163 #include "tbls/utf8_to_cp1255.tbl"
164 
165 #elif defined(CP1256)
166 #include "tbls/utf8_to_cp1256.tbl"
167 
168 #elif defined(CP1257)
169 #include "tbls/utf8_to_cp1257.tbl"
170 
171 #elif defined(CP1258)
172 #include "tbls/utf8_to_cp1258.tbl"
173 
174 #else
175 #error	"Error - nothing defined."
176 #endif
177 };
178 
179 #endif	/* UTF8_TO_SB_H */
180