]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Ok, here is the modified encoding table (column1 is the standard name,
authorTatsuo Ishii <ishii@postgresql.org>
Tue, 16 Oct 2001 10:09:17 +0000 (10:09 +0000)
committerTatsuo Ishii <ishii@postgresql.org>
Tue, 16 Oct 2001 10:09:17 +0000 (10:09 +0000)
2 is our "official" name, and 3 is alias). If there's no objection, I
will change them.

ASCII SQL_ASCII
UTF-8 UNICODE UTF_8
MULE-INTERNAL MULE_INTERNAL
ISO-8859-1 LATIN1 ISO_8859_1
ISO-8859-2 LATIN2 ISO_8859_2
ISO-8859-3 LATIN3 ISO_8859_3
ISO-8859-4 LATIN4 ISO_8859_4
ISO-8859-5 ISO_8859_5
ISO-8859-6 ISO_8859_6
ISO-8859-7 ISO_8859_7
ISO-8859-8 ISO_8859_8
ISO-8859-9 LATIN5 ISO_8859_9
ISO-8859-10 LATIN6 ISO_8859_10
ISO-8859-13 LATIN7 ISO_8859_13
ISO-8859-14 LATIN8 ISO_8859_14
ISO-8859-15 LATIN9 ISO_8859_15
ISO-8859-16 LATIN10 ISO_8859_16

configure
configure.in
src/backend/utils/mb/conv.c
src/backend/utils/mb/encnames.c
src/include/mb/pg_wchar.h

index 7ec6c6128559fb03e87dfa4a1f1b139afea74f05..d650c47a4db489b2cb73737d0bea2b93f0e2e8ad 100755 (executable)
--- a/configure
+++ b/configure
@@ -895,16 +895,16 @@ if test x"${enable_multibyte+set}" = xset; then
       enable_multibyte=yes
 
   case $enableval in
-    SQL_ASCII|EUC_JP|EUC_CN|EUC_KR|EUC_TW|UNICODE|MULE_INTERNAL|LATIN1|LATIN2|LATIN3|LATIN4|LATIN5|KOI8|WIN|ALT|ISO_8859_5|ISO_8859_6|ISO_8859_7|ISO_8859_8|ISO_8859_10|ISO_8859_13|ISO_8859_14|ISO_8859_15|ISO_8859_16)
+    SQL_ASCII|EUC_JP|EUC_CN|EUC_KR|EUC_TW|UNICODE|MULE_INTERNAL|LATIN1|LATIN2|LATIN3|LATIN4|LATIN5|LATIN6|LATIN7|LATIN8|LATIN9|LATIN10|KOI8|WIN|ALT|ISO_8859_5|ISO_8859_6|ISO_8859_7|ISO_8859_8)
       MULTIBYTE=$enableval;;
     *)
       { echo "configure: error: argument to --enable-multibyte must be one of:
   SQL_ASCII, EUC_JP, EUC_CN, EUC_KR, EUC_TW,
   UNICODE, MULE_INTERNAL,
   LATIN1, LATIN2, LATIN3, LATIN4, LATIN5,
+  LATIN6, LATIN7, LATIN8, LATIN9, LATIN10,
   KOI8, WIN, ALT,
-  ISO_8859_6, ISO_8859_7, ISO_8859_8,
-  ISO_8859_10, ISO_8859_13, ISO_8859_14, ISO_8859_15, ISO_8859_16
+  ISO_8859_5, ISO_8859_6, ISO_8859_7, ISO_8859_8
 Or do not specify an argument to the option to use the default." 1>&2; exit 1; };;
   esac
 
@@ -2718,7 +2718,7 @@ echo "using CPPFLAGS=$CPPFLAGS"
 echo "using LDFLAGS=$LDFLAGS"
 
 
-for ac_prog in mawk gawk nawk awk
+for ac_prog in gawk mawk nawk awk
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
@@ -5542,7 +5542,7 @@ else
 int main() {
 
 /* Ultrix mips cc rejects this.  */
-typedef int charset[2]; const charset x;
+typedef int charset[2]; const charset x={0,0};
 /* SunOS 4.1.1 cc rejects this.  */
 char const *const *ccp;
 char **p;
@@ -5617,7 +5617,7 @@ for ac_kw in inline __inline__ __inline; do
 #include "confdefs.h"
 
 int main() {
-} $ac_kw foo() {
+} $ac_kw int foo() {
 ; return 0; }
 EOF
 if { (eval echo configure:5624: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
index 2c7b9b71411af714ee06a095fcd9c680ab7b1e54..ca1e80e27663c94d07f1e3f3c5cfe324d9d80126 100644 (file)
@@ -179,7 +179,7 @@ PGAC_ARG_OPTARG(enable, multibyte, [  --enable-multibyte      enable multibyte c
 [MULTIBYTE=SQL_ASCII],
 [
   case $enableval in
-    SQL_ASCII|EUC_JP|EUC_CN|EUC_KR|EUC_TW|UNICODE|MULE_INTERNAL|LATIN1|LATIN2|LATIN3|LATIN4|LATIN5|KOI8|WIN|ALT|ISO_8859_5|ISO_8859_6|ISO_8859_7|ISO_8859_8|ISO_8859_10|ISO_8859_13|ISO_8859_14|ISO_8859_15|ISO_8859_16)
+    SQL_ASCII|EUC_JP|EUC_CN|EUC_KR|EUC_TW|UNICODE|MULE_INTERNAL|LATIN1|LATIN2|LATIN3|LATIN4|LATIN5|LATIN6|LATIN7|LATIN8|LATIN9|LATIN10|KOI8|WIN|ALT|ISO_8859_5|ISO_8859_6|ISO_8859_7|ISO_8859_8)
       MULTIBYTE=$enableval;;
     *)
       AC_MSG_ERROR(
@@ -187,9 +187,9 @@ PGAC_ARG_OPTARG(enable, multibyte, [  --enable-multibyte      enable multibyte c
   SQL_ASCII, EUC_JP, EUC_CN, EUC_KR, EUC_TW,
   UNICODE, MULE_INTERNAL,
   LATIN1, LATIN2, LATIN3, LATIN4, LATIN5,
+  LATIN6, LATIN7, LATIN8, LATIN9, LATIN10,
   KOI8, WIN, ALT,
-  ISO_8859_6, ISO_8859_7, ISO_8859_8,
-  ISO_8859_10, ISO_8859_13, ISO_8859_14, ISO_8859_15, ISO_8859_16
+  ISO_8859_5, ISO_8859_6, ISO_8859_7, ISO_8859_8
 Or do not specify an argument to the option to use the default.]);;
   esac
 ],
index f6c0ac090a6aefdba5d5e018210a2d59b7540b2e..68fec7e0903e1ad155f0a7dc2e3c7a46feedc236 100644 (file)
@@ -6,7 +6,7 @@
  * WIN1250 client encoding support contributed by Pavel Behal
  * SJIS UDC (NEC selection IBM kanji) support contributed by Eiji Tokuya
  *
- * $Id: conv.c,v 1.31 2001/10/11 14:20:35 ishii Exp $
+ * $Id: conv.c,v 1.32 2001/10/16 10:09:17 ishii Exp $
  *
  *
  */
@@ -1692,6 +1692,11 @@ pg_enconv pg_enconv_tbl[] =
        { PG_LATIN3,    latin32mic, mic2latin3, iso8859_3_to_utf, utf_to_iso8859_3},
        { PG_LATIN4,    latin42mic, mic2latin4, iso8859_4_to_utf, utf_to_iso8859_4},
        { PG_LATIN5,    iso2mic, mic2iso, iso8859_9_to_utf, utf_to_iso8859_9},
+       { PG_LATIN6,    0, 0, iso8859_10_to_utf, utf_to_iso8859_10},
+       { PG_LATIN7,    0, 0, iso8859_13_to_utf, utf_to_iso8859_13},
+       { PG_LATIN8,    0, 0, iso8859_14_to_utf, utf_to_iso8859_14},
+       { PG_LATIN9,    0, 0, iso8859_15_to_utf, utf_to_iso8859_15},
+       { PG_LATIN10,   0, 0, iso8859_16_to_utf, utf_to_iso8859_16},
        { PG_KOI8R,     koi8r2mic, mic2koi8r, KOI8R_to_utf, utf_to_KOI8R},
        { PG_WIN1251,   win12512mic, mic2win1251, WIN1251_to_utf, utf_to_WIN1251},
        { PG_ALT,       alt2mic, mic2alt, ALT_to_utf, utf_to_ALT},
@@ -1699,11 +1704,7 @@ pg_enconv pg_enconv_tbl[] =
        { PG_ISO_8859_6,        0, 0, iso8859_6_to_utf, utf_to_iso8859_6},
        { PG_ISO_8859_7,        0, 0, iso8859_7_to_utf, utf_to_iso8859_7},
        { PG_ISO_8859_8,        0, 0, iso8859_8_to_utf, utf_to_iso8859_8},
-       { PG_ISO_8859_10,       0, 0, iso8859_10_to_utf, utf_to_iso8859_10},
-       { PG_ISO_8859_13,       0, 0, iso8859_13_to_utf, utf_to_iso8859_13},
-       { PG_ISO_8859_14,       0, 0, iso8859_14_to_utf, utf_to_iso8859_14},
-       { PG_ISO_8859_15,       0, 0, iso8859_15_to_utf, utf_to_iso8859_15},
-       { PG_ISO_8859_16,       0, 0, iso8859_16_to_utf, utf_to_iso8859_16},
+
        { PG_SJIS,      sjis2mic, mic2sjis, sjis_to_utf, utf_to_sjis},
        { PG_BIG5,      big52mic, mic2big5, big5_to_utf, utf_to_big5},
        { PG_WIN1250,   win12502mic, mic2win1250, 0, 0},
@@ -1725,6 +1726,11 @@ pg_enconv pg_enconv_tbl[] =
        { PG_LATIN3,    latin32mic, mic2latin3, 0, 0},
        { PG_LATIN4,    latin42mic, mic2latin4, 0, 0},
        { PG_LATIN5,    iso2mic, mic2iso, 0, 0},
+       { PG_LATIN6,    0, 0, 0, 0},
+       { PG_LATIN7,    0, 0, 0, 0},
+       { PG_LATIN8,    0, 0, 0, 0},
+       { PG_LATIN9,    0, 0, 0, 0},
+       { PG_LATIN10,   0, 0, 0, 0},
        { PG_KOI8R,     koi8r2mic, mic2koi8r, 0, 0},
        { PG_WIN1251,   win12512mic, mic2win1251, 0, 0},
        { PG_ALT,       alt2mic, mic2alt, 0, 0},
@@ -1732,11 +1738,6 @@ pg_enconv pg_enconv_tbl[] =
        { PG_ISO_8859_6,        0, 0, 0, 0},
        { PG_ISO_8859_7,        0, 0, 0, 0},
        { PG_ISO_8859_8,        0, 0, 0, 0},
-       { PG_ISO_8859_10,       0, 0, 0, 0},
-       { PG_ISO_8859_13,       0, 0, 0, 0},
-       { PG_ISO_8859_14,       0, 0, 0, 0},
-       { PG_ISO_8859_15,       0, 0, 0, 0},
-       { PG_ISO_8859_16,       0, 0, 0, 0},
        { PG_SJIS,      sjis2mic, mic2sjis, 0, 0},
        { PG_BIG5,      big52mic, mic2big5, 0, 0},
        { PG_WIN1250,   win12502mic, mic2win1250, 0, 0},
index 51fc8bd61cbc2380798f5196bda6a1cb669b6568..f2e16460eb2b55ffc6a87cc5ba4d156fb54bbcec 100644 (file)
@@ -2,7 +2,7 @@
  * Encoding names and routines for work with it. All
  * in this file is shared bedween FE and BE.
  *
- * $Id: encnames.c,v 1.3 2001/10/11 14:20:35 ishii Exp $
+ * $Id: encnames.c,v 1.4 2001/10/16 10:09:17 ishii Exp $
  */
 #ifdef FRONTEND
 #include "postgres_fe.h"
@@ -38,16 +38,16 @@ pg_encname pg_encname_tbl[] =
 {
        { "alt",        PG_ALT },               /* IBM866 */
        { "big5",       PG_BIG5 },              /* Big5; Chinese for Taiwan Multi-byte set */
-       { "euccn",      PG_EUC_CN },            /* EUC-CN; ??? */
-       { "eucjp",      PG_EUC_JP },            /* EUC-JP; Extended UNIX Code Fixed Width for Japanese, stdandard OSF */
+       { "euccn",      PG_EUC_CN },            /* EUC-CN; Extended Unix Code for simplified Chinese */
+       { "eucjp",      PG_EUC_JP },            /* EUC-JP; Extended UNIX Code fixed Width for Japanese, stdandard OSF */
        { "euckr",      PG_EUC_KR },            /* EUC-KR; RFC1557,Choi */
-       { "euctw",      PG_EUC_TW },            /* EUC-TW; ???  */
+       { "euctw",      PG_EUC_TW },            /* EUC-TW; Extended Unix Code for traditional Chinese */
        { "iso88591",   PG_LATIN1 },            /* ISO-8859-1; RFC1345,KXS2 */
-       { "iso885910",  PG_ISO_8859_10 },       /* ISO-8859-10; RFC1345,KXS2 */
-       { "iso885913",  PG_ISO_8859_13 },       /* ISO-8859-13; RFC1345,KXS2 */
-       { "iso885914",  PG_ISO_8859_14 },       /* ISO-8859-14; RFC1345,KXS2 */
-       { "iso885915",  PG_ISO_8859_15 },       /* ISO-8859-15; RFC1345,KXS2 */
-       { "iso885916",  PG_ISO_8859_16 },       /* ISO-8859-15; RFC1345,KXS2 */
+       { "iso885910",  PG_LATIN6 },    /* ISO-8859-10; RFC1345,KXS2 */
+       { "iso885913",  PG_LATIN7 },    /* ISO-8859-13; RFC1345,KXS2 */
+       { "iso885914",  PG_LATIN8 },    /* ISO-8859-14; RFC1345,KXS2 */
+       { "iso885915",  PG_LATIN9 },    /* ISO-8859-15; RFC1345,KXS2 */
+       { "iso885916",  PG_LATIN10 },   /* ISO-8859-16; RFC1345,KXS2 */
        { "iso88592",   PG_LATIN2 },            /* ISO-8859-2; RFC1345,KXS2 */
        { "iso88593",   PG_LATIN3 },            /* ISO-8859-3; RFC1345,KXS2 */
        { "iso88594",   PG_LATIN4 },            /* ISO-8859-4; RFC1345,KXS2 */
@@ -59,14 +59,15 @@ pg_encname pg_encname_tbl[] =
        { "koi8",       PG_KOI8R },             /* _dirty_ alias for KOI8-R (backward compatibility) */
        { "koi8r",      PG_KOI8R },             /* KOI8-R; RFC1489 */
        { "latin1",     PG_LATIN1 },            /* alias for ISO-8859-1 */
+       { "latin10",    PG_LATIN10},            /* alias for ISO-8859-16 */
        { "latin2",     PG_LATIN2 },            /* alias for ISO-8859-2 */
        { "latin3",     PG_LATIN3 },            /* alias for ISO-8859-3 */
        { "latin4",     PG_LATIN4 },            /* alias for ISO-8859-4 */
        { "latin5",     PG_LATIN5 },            /* alias for ISO-8859-9 */
-       { "latin6",     PG_ISO_8859_10},        /* alias for ISO-8859-10 */
-       { "latin7",     PG_ISO_8859_13},        /* alias for ISO-8859-13 */
-       { "latin8",     PG_ISO_8859_14},        /* alias for ISO-8859-14 */
-       { "latin9",     PG_ISO_8859_15},        /* alias for ISO-8859-15 */
+       { "latin6",     PG_LATIN6},             /* alias for ISO-8859-10 */
+       { "latin7",     PG_LATIN7},             /* alias for ISO-8859-13 */
+       { "latin8",     PG_LATIN8},             /* alias for ISO-8859-14 */
+       { "latin9",     PG_LATIN9},             /* alias for ISO-8859-15 */
        { "mskanji",    PG_SJIS },              /* alias for Shift_JIS */
        { "muleinternal",PG_MULE_INTERNAL },
        { "shiftjis",   PG_SJIS },              /* Shift_JIS; JIS X 0202-1991 */
@@ -87,7 +88,8 @@ unsigned int pg_encname_tbl_sz = \
                sizeof(pg_encname_tbl) / sizeof(pg_encname_tbl[0]) -1;
 
 /* ----------
- * WARNING: sorted by pg_enc enum (pg_wchar.h)!
+ * These are "official" encoding names.
+ * XXX must be sorted by the same order as pg_enc type (see mb/pg_wchar.h)
  * ----------
  */
 pg_enc2name pg_enc2name_tbl[] =
@@ -104,6 +106,11 @@ pg_enc2name pg_enc2name_tbl[] =
        { "LATIN3",     PG_LATIN3 },
        { "LATIN4",     PG_LATIN4 },
        { "LATIN5",     PG_LATIN5 },
+       { "LATIN6",     PG_LATIN6 },
+       { "LATIN7",     PG_LATIN7 },
+       { "LATIN8",     PG_LATIN8 },
+       { "LATIN9",     PG_LATIN9 },
+       { "LATIN10",    PG_LATIN10 },
        { "KOI8",       PG_KOI8R },
        { "WIN",        PG_WIN1251 },
        { "ALT",        PG_ALT },
@@ -111,11 +118,6 @@ pg_enc2name pg_enc2name_tbl[] =
        { "ISO_8859_6", PG_ISO_8859_6 },
        { "ISO_8859_7", PG_ISO_8859_7 },
        { "ISO_8859_8", PG_ISO_8859_8 },
-       { "ISO_8859_10", PG_ISO_8859_10 },
-       { "ISO_8859_13", PG_ISO_8859_13 },
-       { "ISO_8859_14", PG_ISO_8859_14 },
-       { "ISO_8859_15", PG_ISO_8859_15 },
-       { "ISO_8859_16", PG_ISO_8859_16 },
        { "SJIS",       PG_SJIS },
        { "BIG5",       PG_BIG5 },
        { "WIN1250",    PG_WIN1250 }
index 38d06661d5e55e6b531846528e9921f93e2faedb..c1e60312ab60f49fc6637427b1e62a81be09cbc2 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: pg_wchar.h,v 1.33 2001/10/11 14:20:35 ishii Exp $ */
+/* $Id: pg_wchar.h,v 1.34 2001/10/16 10:09:17 ishii Exp $ */
 
 #ifndef PG_WCHAR_H
 #define PG_WCHAR_H
@@ -141,7 +141,7 @@ typedef unsigned int pg_wchar;
  * Encoding numeral identificators
  *
  * WARNING: the order of this table must be same as order 
- *          in the pg_enconv[] (mb/conv.c) and pg_enc2name[] (mb/names.c) array!
+ *          in the pg_enconv[] (mb/conv.c) and pg_enc2name[] (mb/encnames.c) array!
  *
  *          If you add some encoding don'y forget check  
  *          PG_ENCODING_[BE|FE]_LAST macros.
@@ -157,11 +157,16 @@ typedef enum pg_enc
        PG_EUC_TW,                              /* EUC for Taiwan */
        PG_UTF8,                                /* Unicode UTF-8 */
        PG_MULE_INTERNAL,                       /* Mule internal code */
-       PG_LATIN1,                              /* ISO-8859 Latin 1 */
-       PG_LATIN2,                              /* ISO-8859 Latin 2 */
-       PG_LATIN3,                              /* ISO-8859 Latin 3 */
-       PG_LATIN4,                              /* ISO-8859 Latin 4 */
+       PG_LATIN1,                              /* ISO-8859-1 Latin 1 */
+       PG_LATIN2,                              /* ISO-8859-2 Latin 2 */
+       PG_LATIN3,                              /* ISO-8859-3 Latin 3 */
+       PG_LATIN4,                              /* ISO-8859-4 Latin 4 */
        PG_LATIN5,                              /* ISO-8859-9 Latin 5 */
+       PG_LATIN6,                              /* ISO-8859-10 Latin6 */
+       PG_LATIN7,                              /* ISO-8859-13 Latin7 */
+       PG_LATIN8,                              /* ISO-8859-14 Latin8 */
+       PG_LATIN9,                              /* ISO-8859-15 Latin9 */
+       PG_LATIN10,                             /* ISO-8859-16 Latin10 */
        PG_KOI8R,                               /* KOI8-R */
        PG_WIN1251,                             /* windows-1251 (was: WIN) */
        PG_ALT,                                 /* (MS-DOS CP866) */
@@ -169,12 +174,7 @@ typedef enum pg_enc
        PG_ISO_8859_6,                          /* ISO-8859-6 */
        PG_ISO_8859_7,                          /* ISO-8859-7 */
        PG_ISO_8859_8,                          /* ISO-8859-8 */
-       PG_ISO_8859_10,                         /* ISO-8859-10 Latin6 */
-       PG_ISO_8859_13,                         /* ISO-8859-13 Latin7 */
-       PG_ISO_8859_14,                         /* ISO-8859-14 Latin8 */
-       PG_ISO_8859_15,                         /* ISO-8859-15 Latin9 */
-       PG_ISO_8859_16,                         /* ISO-8859-16 */
-       
+
        /* followings are for client encoding only */
        PG_SJIS,                                /* Shift JIS */
        PG_BIG5,                                /* Big5 */
@@ -184,7 +184,7 @@ typedef enum pg_enc
 
 } pg_enc;
 
-#define PG_ENCODING_BE_LAST    PG_ISO_8859_16
+#define PG_ENCODING_BE_LAST    PG_ISO_8859_8
 #define PG_ENCODING_FE_LAST    PG_WIN1250