Remove all traces of multibyte and locale options. Clean up comments
referring to "multibyte" where it really means character encoding.
This commit is contained in:
parent
86f27321e2
commit
77f7763b55
|
@ -1632,17 +1632,6 @@ echo "$as_me:$LINENO: result: $enable_recode" >&5
|
||||||
echo "${ECHO_T}$enable_recode" >&6
|
echo "${ECHO_T}$enable_recode" >&6
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
# Multibyte support
|
|
||||||
#
|
|
||||||
MULTIBYTE=SQL_ASCII
|
|
||||||
|
|
||||||
cat >>confdefs.h <<\_ACEOF
|
|
||||||
#define MULTIBYTE 1
|
|
||||||
_ACEOF
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# NLS
|
# NLS
|
||||||
#
|
#
|
||||||
|
@ -16275,7 +16264,6 @@ s,@host_vendor@,$host_vendor,;t t
|
||||||
s,@host_os@,$host_os,;t t
|
s,@host_os@,$host_os,;t t
|
||||||
s,@PORTNAME@,$PORTNAME,;t t
|
s,@PORTNAME@,$PORTNAME,;t t
|
||||||
s,@TAS@,$TAS,;t t
|
s,@TAS@,$TAS,;t t
|
||||||
s,@MULTIBYTE@,$MULTIBYTE,;t t
|
|
||||||
s,@enable_nls@,$enable_nls,;t t
|
s,@enable_nls@,$enable_nls,;t t
|
||||||
s,@WANTED_LANGUAGES@,$WANTED_LANGUAGES,;t t
|
s,@WANTED_LANGUAGES@,$WANTED_LANGUAGES,;t t
|
||||||
s,@default_port@,$default_port,;t t
|
s,@default_port@,$default_port,;t t
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
dnl Process this file with autoconf to produce a configure script.
|
dnl Process this file with autoconf to produce a configure script.
|
||||||
dnl $Header: /cvsroot/pgsql/configure.in,v 1.201 2002/09/02 16:14:01 momjian Exp $
|
dnl $Header: /cvsroot/pgsql/configure.in,v 1.202 2002/09/03 21:45:41 petere Exp $
|
||||||
dnl
|
dnl
|
||||||
dnl Developers, please strive to achieve this order:
|
dnl Developers, please strive to achieve this order:
|
||||||
dnl
|
dnl
|
||||||
|
@ -161,13 +161,6 @@ PGAC_ARG_BOOL(enable, recode, no, [ --enable-recode enable character se
|
||||||
AC_MSG_RESULT([$enable_recode])
|
AC_MSG_RESULT([$enable_recode])
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
# Multibyte support
|
|
||||||
#
|
|
||||||
MULTIBYTE=SQL_ASCII
|
|
||||||
AC_DEFINE(MULTIBYTE, 1, [Set to 1 if you want to use multibyte characters (--enable-multibyte)])
|
|
||||||
AC_SUBST(MULTIBYTE)
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# NLS
|
# NLS
|
||||||
#
|
#
|
||||||
|
|
|
@ -2,9 +2,7 @@
|
||||||
#define TABLE_DICT_END }
|
#define TABLE_DICT_END }
|
||||||
|
|
||||||
#include "dict/porter_english.dct"
|
#include "dict/porter_english.dct"
|
||||||
#ifdef USE_LOCALE
|
|
||||||
#include "dict/russian_stemming.dct"
|
#include "dict/russian_stemming.dct"
|
||||||
#endif
|
|
||||||
|
|
||||||
#undef TABLE_DICT_START
|
#undef TABLE_DICT_START
|
||||||
#undef TABLE_DICT_END
|
#undef TABLE_DICT_END
|
||||||
|
|
|
@ -104,19 +104,15 @@ initmorph(void)
|
||||||
k;
|
k;
|
||||||
MAPDICT *md;
|
MAPDICT *md;
|
||||||
bool needinit[lengthof(dicts)];
|
bool needinit[lengthof(dicts)];
|
||||||
|
|
||||||
#ifdef USE_LOCALE
|
|
||||||
PG_LocaleCategories lc;
|
PG_LocaleCategories lc;
|
||||||
|
|
||||||
int bylocaledict = NODICT;
|
int bylocaledict = NODICT;
|
||||||
#endif
|
|
||||||
|
|
||||||
if (inited)
|
if (inited)
|
||||||
return;
|
return;
|
||||||
for (i = 1; i < lengthof(dicts); i++)
|
for (i = 1; i < lengthof(dicts); i++)
|
||||||
needinit[i] = false;
|
needinit[i] = false;
|
||||||
|
|
||||||
#ifdef USE_LOCALE
|
|
||||||
PGLC_current(&lc);
|
PGLC_current(&lc);
|
||||||
if ( lc.lc_ctype )
|
if ( lc.lc_ctype )
|
||||||
for (i = 1; i < lengthof(dicts); i++)
|
for (i = 1; i < lengthof(dicts); i++)
|
||||||
|
@ -126,7 +122,6 @@ initmorph(void)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
PGLC_free_categories(&lc);
|
PGLC_free_categories(&lc);
|
||||||
#endif
|
|
||||||
|
|
||||||
for (i = 1; i < lengthof(mapdict); i++)
|
for (i = 1; i < lengthof(mapdict); i++)
|
||||||
{
|
{
|
||||||
|
@ -139,13 +134,9 @@ initmorph(void)
|
||||||
break;
|
break;
|
||||||
else if (GETDICT(md, k) == BYLOCALE)
|
else if (GETDICT(md, k) == BYLOCALE)
|
||||||
{
|
{
|
||||||
#ifdef USE_LOCALE
|
|
||||||
if (bylocaledict == NODICT)
|
if (bylocaledict == NODICT)
|
||||||
continue;
|
continue;
|
||||||
GETDICT(md, k) = bylocaledict;
|
GETDICT(md, k) = bylocaledict;
|
||||||
#else
|
|
||||||
continue;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
if (GETDICT(md, k) >= (int2) lengthof(dicts))
|
if (GETDICT(md, k) >= (int2) lengthof(dicts))
|
||||||
continue;
|
continue;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# -*-makefile-*-
|
# -*-makefile-*-
|
||||||
# $Header: /cvsroot/pgsql/src/Makefile.global.in,v 1.153 2002/08/22 22:43:10 scrappy Exp $
|
# $Header: /cvsroot/pgsql/src/Makefile.global.in,v 1.154 2002/09/03 21:45:41 petere Exp $
|
||||||
|
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
# All PostgreSQL makefiles include this file and use the variables it sets,
|
# All PostgreSQL makefiles include this file and use the variables it sets,
|
||||||
|
@ -127,7 +127,6 @@ with_perl = @with_perl@
|
||||||
with_python = @with_python@
|
with_python = @with_python@
|
||||||
with_tcl = @with_tcl@
|
with_tcl = @with_tcl@
|
||||||
with_tk = @with_tk@
|
with_tk = @with_tk@
|
||||||
MULTIBYTE = @MULTIBYTE@
|
|
||||||
enable_shared = @enable_shared@
|
enable_shared = @enable_shared@
|
||||||
enable_rpath = @enable_rpath@
|
enable_rpath = @enable_rpath@
|
||||||
enable_nls = @enable_nls@
|
enable_nls = @enable_nls@
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.102 2002/09/02 02:47:01 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.103 2002/09/03 21:45:41 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -591,7 +591,7 @@ get_db_info(const char *name, Oid *dbIdP, int4 *ownerIdP,
|
||||||
/* sysid of the owner */
|
/* sysid of the owner */
|
||||||
if (ownerIdP)
|
if (ownerIdP)
|
||||||
*ownerIdP = dbform->datdba;
|
*ownerIdP = dbform->datdba;
|
||||||
/* multibyte encoding */
|
/* character encoding */
|
||||||
if (encodingP)
|
if (encodingP)
|
||||||
*encodingP = dbform->encoding;
|
*encodingP = dbform->encoding;
|
||||||
/* allowed as template? */
|
/* allowed as template? */
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: pqcomm.c,v 1.138 2002/09/02 02:47:02 momjian Exp $
|
* $Id: pqcomm.c,v 1.139 2002/09/03 21:45:42 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -556,9 +556,9 @@ pq_getbytes(char *s, size_t len)
|
||||||
* The return value is placed in an expansible StringInfo.
|
* The return value is placed in an expansible StringInfo.
|
||||||
* Note that space allocation comes from the current memory context!
|
* Note that space allocation comes from the current memory context!
|
||||||
*
|
*
|
||||||
* NOTE: this routine does not do any MULTIBYTE conversion,
|
* NOTE: this routine does not do any character set conversion,
|
||||||
* even though it is presumably useful only for text, because
|
* even though it is presumably useful only for text, because
|
||||||
* no code in this module should depend on MULTIBYTE mode.
|
* no code in this module should depend on the encoding.
|
||||||
* See pq_getstr in pqformat.c for that.
|
* See pq_getstr in pqformat.c for that.
|
||||||
*
|
*
|
||||||
* returns 0 if OK, EOF if trouble
|
* returns 0 if OK, EOF if trouble
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
* formatting/conversion routines that are needed to produce valid messages.
|
* formatting/conversion routines that are needed to produce valid messages.
|
||||||
* Note in particular the distinction between "raw data" and "text"; raw data
|
* Note in particular the distinction between "raw data" and "text"; raw data
|
||||||
* is message protocol characters and binary values that are not subject to
|
* is message protocol characters and binary values that are not subject to
|
||||||
* MULTIBYTE conversion, while text is converted by MULTIBYTE rules.
|
* character set conversion, while text is converted by character encoding rules.
|
||||||
*
|
*
|
||||||
* Incoming messages are read directly off the wire, as it were, but there
|
* Incoming messages are read directly off the wire, as it were, but there
|
||||||
* are still data-conversion tasks to be performed.
|
* are still data-conversion tasks to be performed.
|
||||||
|
@ -16,7 +16,7 @@
|
||||||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: pqformat.c,v 1.23 2002/08/29 03:22:01 tgl Exp $
|
* $Id: pqformat.c,v 1.24 2002/09/03 21:45:42 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -27,20 +27,20 @@
|
||||||
* pq_sendbyte - append a raw byte to a StringInfo buffer
|
* pq_sendbyte - append a raw byte to a StringInfo buffer
|
||||||
* pq_sendint - append a binary integer to a StringInfo buffer
|
* pq_sendint - append a binary integer to a StringInfo buffer
|
||||||
* pq_sendbytes - append raw data to a StringInfo buffer
|
* pq_sendbytes - append raw data to a StringInfo buffer
|
||||||
* pq_sendcountedtext - append a text string (with MULTIBYTE conversion)
|
* pq_sendcountedtext - append a text string (with character set conversion)
|
||||||
* pq_sendstring - append a null-terminated text string (with MULTIBYTE)
|
* pq_sendstring - append a null-terminated text string (with conversion)
|
||||||
* pq_endmessage - send the completed message to the frontend
|
* pq_endmessage - send the completed message to the frontend
|
||||||
* Note: it is also possible to append data to the StringInfo buffer using
|
* Note: it is also possible to append data to the StringInfo buffer using
|
||||||
* the regular StringInfo routines, but this is discouraged since required
|
* the regular StringInfo routines, but this is discouraged since required
|
||||||
* MULTIBYTE conversion may not occur.
|
* character set conversion may not occur.
|
||||||
*
|
*
|
||||||
* Special-case message output:
|
* Special-case message output:
|
||||||
* pq_puttextmessage - generate a MULTIBYTE-converted message in one step
|
* pq_puttextmessage - generate a character set-converted message in one step
|
||||||
*
|
*
|
||||||
* Message input:
|
* Message input:
|
||||||
* pq_getint - get an integer from connection
|
* pq_getint - get an integer from connection
|
||||||
* pq_getstr - get a null terminated string from connection
|
* pq_getstr - get a null terminated string from connection
|
||||||
* pq_getstr performs MULTIBYTE conversion on the collected string.
|
* pq_getstr performs character set conversion on the collected string.
|
||||||
* Use the raw pqcomm.c routines pq_getstring or pq_getbytes
|
* Use the raw pqcomm.c routines pq_getstring or pq_getbytes
|
||||||
* to fetch data without conversion.
|
* to fetch data without conversion.
|
||||||
*/
|
*/
|
||||||
|
@ -79,7 +79,7 @@ pq_sendbytes(StringInfo buf, const char *data, int datalen)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------
|
/* --------------------------------
|
||||||
* pq_sendcountedtext - append a text string (with MULTIBYTE conversion)
|
* pq_sendcountedtext - append a text string (with character set conversion)
|
||||||
*
|
*
|
||||||
* The data sent to the frontend by this routine is a 4-byte count field
|
* The data sent to the frontend by this routine is a 4-byte count field
|
||||||
* (the count includes itself, by convention) followed by the string.
|
* (the count includes itself, by convention) followed by the string.
|
||||||
|
@ -106,7 +106,7 @@ pq_sendcountedtext(StringInfo buf, const char *str, int slen)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------
|
/* --------------------------------
|
||||||
* pq_sendstring - append a null-terminated text string (with MULTIBYTE)
|
* pq_sendstring - append a null-terminated text string (with conversion)
|
||||||
*
|
*
|
||||||
* NB: passed text string must be null-terminated, and so is the data
|
* NB: passed text string must be null-terminated, and so is the data
|
||||||
* sent to the frontend.
|
* sent to the frontend.
|
||||||
|
@ -178,10 +178,10 @@ pq_endmessage(StringInfo buf)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------
|
/* --------------------------------
|
||||||
* pq_puttextmessage - generate a MULTIBYTE-converted message in one step
|
* pq_puttextmessage - generate a character set-converted message in one step
|
||||||
*
|
*
|
||||||
* This is the same as the pqcomm.c routine pq_putmessage, except that
|
* This is the same as the pqcomm.c routine pq_putmessage, except that
|
||||||
* the message body is a null-terminated string to which MULTIBYTE
|
* the message body is a null-terminated string to which encoding
|
||||||
* conversion applies.
|
* conversion applies.
|
||||||
*
|
*
|
||||||
* returns 0 if OK, EOF if trouble
|
* returns 0 if OK, EOF if trouble
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
# Makefile for regex
|
# Makefile for regex
|
||||||
#
|
#
|
||||||
# IDENTIFICATION
|
# IDENTIFICATION
|
||||||
# $Header: /cvsroot/pgsql/src/backend/regex/Makefile,v 1.17 2001/10/04 04:16:16 ishii Exp $
|
# $Header: /cvsroot/pgsql/src/backend/regex/Makefile,v 1.18 2002/09/03 21:45:42 petere Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -14,13 +14,8 @@ include $(top_builddir)/src/Makefile.global
|
||||||
|
|
||||||
override CPPFLAGS += -DPOSIX_MISTAKE
|
override CPPFLAGS += -DPOSIX_MISTAKE
|
||||||
|
|
||||||
DEBUGOBJ =
|
|
||||||
|
|
||||||
OBJS = regcomp.o regerror.o regexec.o regfree.o
|
OBJS = regcomp.o regerror.o regexec.o regfree.o
|
||||||
|
|
||||||
ifdef MULTIBYTE
|
|
||||||
DEBUGOBJ += ../utils/mb/SUBSYS.o
|
DEBUGOBJ += ../utils/mb/SUBSYS.o
|
||||||
endif
|
|
||||||
|
|
||||||
all: SUBSYS.o
|
all: SUBSYS.o
|
||||||
|
|
||||||
|
@ -32,12 +27,5 @@ regexec.o: regexec.c engine.c
|
||||||
retest: retest.o SUBSYS.o $(DEBUGOBJ)
|
retest: retest.o SUBSYS.o $(DEBUGOBJ)
|
||||||
$(CC) $(CFLAGS) $(LDFLAGS) $^ $(LIBS) -o $@
|
$(CC) $(CFLAGS) $(LDFLAGS) $^ $(LIBS) -o $@
|
||||||
|
|
||||||
depend dep:
|
|
||||||
$(CC) -MM $(CFLAGS) *.c >depend
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f SUBSYS.o $(OBJS) retest retest.o
|
rm -f SUBSYS.o $(OBJS) retest retest.o
|
||||||
|
|
||||||
ifeq (depend,$(wildcard depend))
|
|
||||||
include depend
|
|
||||||
endif
|
|
||||||
|
|
|
@ -1,17 +1,14 @@
|
||||||
#
|
#
|
||||||
# Makefile for utils
|
# Makefile for utils
|
||||||
#
|
#
|
||||||
# $Header: /cvsroot/pgsql/src/backend/utils/Makefile,v 1.19 2002/08/10 17:59:28 petere Exp $
|
# $Header: /cvsroot/pgsql/src/backend/utils/Makefile,v 1.20 2002/09/03 21:45:42 petere Exp $
|
||||||
#
|
#
|
||||||
|
|
||||||
subdir = src/backend/utils/
|
subdir = src/backend/utils/
|
||||||
top_builddir = ../../..
|
top_builddir = ../../..
|
||||||
include $(top_builddir)/src/Makefile.global
|
include $(top_builddir)/src/Makefile.global
|
||||||
|
|
||||||
SUBDIRS := adt cache error fmgr hash init misc mmgr sort time
|
SUBDIRS := adt cache error fmgr hash init misc mmgr sort time mb
|
||||||
ifdef MULTIBYTE
|
|
||||||
SUBDIRS += mb
|
|
||||||
endif
|
|
||||||
SUBDIROBJS := $(SUBDIRS:%=%/SUBSYS.o)
|
SUBDIROBJS := $(SUBDIRS:%=%/SUBSYS.o)
|
||||||
|
|
||||||
|
|
||||||
|
@ -33,10 +30,3 @@ fmgroids.h fmgrtab.c: Gen_fmgrtab.sh $(top_srcdir)/src/include/catalog/pg_proc.h
|
||||||
clean:
|
clean:
|
||||||
for dir in $(SUBDIRS); do $(MAKE) -C $$dir $@ || exit; done
|
for dir in $(SUBDIRS); do $(MAKE) -C $$dir $@ || exit; done
|
||||||
rm -f SUBSYS.o fmgrtab.o fmgroids.h fmgrtab.c
|
rm -f SUBSYS.o fmgrtab.o fmgroids.h fmgrtab.c
|
||||||
|
|
||||||
dep depend: fmgroids.h fmgrtab.c
|
|
||||||
for dir in $(SUBDIRS); do $(MAKE) -C $$dir $@ || exit; done
|
|
||||||
|
|
||||||
ifeq (depend,$(wildcard depend))
|
|
||||||
include depend
|
|
||||||
endif
|
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
* workings can be found in the book "Software Solutions in C" by
|
* workings can be found in the book "Software Solutions in C" by
|
||||||
* Dale Schumacher, Academic Press, ISBN: 0-12-632360-7.
|
* Dale Schumacher, Academic Press, ISBN: 0-12-632360-7.
|
||||||
*
|
*
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/cash.c,v 1.54 2002/08/20 16:46:29 tgl Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/adt/cash.c,v 1.55 2002/09/03 21:45:42 petere Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "postgres.h"
|
#include "postgres.h"
|
||||||
|
@ -61,7 +61,7 @@ CashGetDatum(Cash value)
|
||||||
* XXX HACK It looks as though some of the symbols for
|
* XXX HACK It looks as though some of the symbols for
|
||||||
* monetary values returned by localeconv() can be multiple
|
* monetary values returned by localeconv() can be multiple
|
||||||
* bytes/characters. This code assumes one byte only. - tgl 97/04/14
|
* bytes/characters. This code assumes one byte only. - tgl 97/04/14
|
||||||
* XXX UNHACK Allow the currency symbol to be multi-byte.
|
* XXX UNHACK Allow the currency symbol to be multibyte.
|
||||||
* - thomas 1998-03-01
|
* - thomas 1998-03-01
|
||||||
*/
|
*/
|
||||||
Datum
|
Datum
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/like.c,v 1.52 2002/09/02 06:22:19 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/adt/like.c,v 1.53 2002/09/03 21:45:42 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -93,7 +93,7 @@ iwchareq(unsigned char *p1, unsigned char *p2)
|
||||||
return (0);
|
return (0);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ok, p1 and p2 are both > CHARMAX, then they must be multi-byte
|
* ok, p1 and p2 are both > CHARMAX, then they must be multibyte
|
||||||
* characters
|
* characters
|
||||||
*/
|
*/
|
||||||
l = pg_mblen(p1);
|
l = pg_mblen(p1);
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
* like_match.c
|
* like_match.c
|
||||||
* like expression handling internal code.
|
* like expression handling internal code.
|
||||||
*
|
*
|
||||||
* This file is included by like.c *twice* if multibyte is enabled.
|
* This file is included by like.c *twice*, to provide an optimization
|
||||||
* This is for an optimization of single byte encodings.
|
* for single-byte encodings.
|
||||||
|
*
|
||||||
* Before the inclusion, we need to define following macros:
|
* Before the inclusion, we need to define following macros:
|
||||||
*
|
*
|
||||||
* CHAREQ
|
* CHAREQ
|
||||||
|
@ -18,7 +19,7 @@
|
||||||
* Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
* Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/like_match.c,v 1.3 2002/06/20 20:29:37 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/adt/like_match.c,v 1.4 2002/09/03 21:45:42 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/quote.c,v 1.8 2002/08/29 07:22:27 ishii Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/adt/quote.c,v 1.9 2002/09/03 21:45:42 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -64,13 +64,9 @@ quote_literal(PG_FUNCTION_ARGS)
|
||||||
PG_RETURN_TEXT_P(result);
|
PG_RETURN_TEXT_P(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* MULTIBYTE dependant internal functions follow
|
* Check if a given identifier needs quoting
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Check if a given identifier needs quoting (MULTIBYTE version) */
|
|
||||||
static bool
|
static bool
|
||||||
quote_ident_required(text *iptr)
|
quote_ident_required(text *iptr)
|
||||||
{
|
{
|
||||||
|
@ -106,7 +102,9 @@ quote_ident_required(text *iptr)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Return a properly quoted identifier (MULTIBYTE version) */
|
/*
|
||||||
|
* Return a properly quoted identifier
|
||||||
|
*/
|
||||||
static text *
|
static text *
|
||||||
do_quote_ident(text *iptr)
|
do_quote_ident(text *iptr)
|
||||||
{
|
{
|
||||||
|
@ -147,7 +145,9 @@ do_quote_ident(text *iptr)
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Return a properly quoted literal value (MULTIBYTE version) */
|
/*
|
||||||
|
* Return a properly quoted literal value
|
||||||
|
*/
|
||||||
static text *
|
static text *
|
||||||
do_quote_literal(text *lptr)
|
do_quote_literal(text *lptr)
|
||||||
{
|
{
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/selfuncs.c,v 1.115 2002/09/02 06:22:19 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/adt/selfuncs.c,v 1.116 2002/09/03 21:45:42 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -3367,7 +3367,7 @@ make_greater_string(const Const *str_const)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Truncate off the last character, which might be more than 1
|
* Truncate off the last character, which might be more than 1
|
||||||
* byte in MULTIBYTE case.
|
* byte, depending on the character encoding.
|
||||||
*/
|
*/
|
||||||
if (datatype != BYTEAOID && pg_database_encoding_max_length() > 1)
|
if (datatype != BYTEAOID && pg_database_encoding_max_length() > 1)
|
||||||
len = pg_mbcliplen((const unsigned char *) workstr, len, len - 1);
|
len = pg_mbcliplen((const unsigned char *) workstr, len, len - 1);
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.92 2002/08/29 07:22:27 ishii Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.93 2002/09/03 21:45:42 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -350,8 +350,8 @@ name_bpchar(PG_FUNCTION_ARGS)
|
||||||
* Convert a C string to VARCHAR internal representation. atttypmod
|
* Convert a C string to VARCHAR internal representation. atttypmod
|
||||||
* is the declared length of the type plus VARHDRSZ.
|
* is the declared length of the type plus VARHDRSZ.
|
||||||
*
|
*
|
||||||
* Note that if MULTIBYTE is enabled, atttypmod is regarded as the
|
* Note that atttypmod is regarded as the number of characters, which
|
||||||
* number of characters, rather than number of bytes.
|
* is not necessarily the same as the number of bytes.
|
||||||
*
|
*
|
||||||
* If the C string is too long,
|
* If the C string is too long,
|
||||||
* raise an error, unless the extra characters are spaces, in which
|
* raise an error, unless the extra characters are spaces, in which
|
||||||
|
@ -450,7 +450,7 @@ varchar(PG_FUNCTION_ARGS)
|
||||||
{
|
{
|
||||||
size_t maxmblen;
|
size_t maxmblen;
|
||||||
|
|
||||||
/* truncate multi-byte string preserving multi-byte boundary */
|
/* truncate multibyte string preserving multibyte boundary */
|
||||||
maxmblen = pg_mbcharcliplen(VARDATA(source), len - VARHDRSZ,
|
maxmblen = pg_mbcharcliplen(VARDATA(source), len - VARHDRSZ,
|
||||||
maxlen - VARHDRSZ) + VARHDRSZ;
|
maxlen - VARHDRSZ) + VARHDRSZ;
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/adt/varlena.c,v 1.90 2002/08/29 07:22:27 ishii Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/adt/varlena.c,v 1.91 2002/09/03 21:45:42 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -412,9 +412,9 @@ textcat(PG_FUNCTION_ARGS)
|
||||||
* If the length is less than zero, return the remaining string.
|
* If the length is less than zero, return the remaining string.
|
||||||
*
|
*
|
||||||
* Note that the arguments operate on octet length,
|
* Note that the arguments operate on octet length,
|
||||||
* so not aware of multi-byte character sets.
|
* so not aware of multibyte character sets.
|
||||||
*
|
*
|
||||||
* Added multi-byte support.
|
* Added multibyte support.
|
||||||
* - Tatsuo Ishii 1998-4-21
|
* - Tatsuo Ishii 1998-4-21
|
||||||
* Changed behavior if starting position is less than one to conform to SQL92 behavior.
|
* Changed behavior if starting position is less than one to conform to SQL92 behavior.
|
||||||
* Formerly returned the entire string; now returns a portion.
|
* Formerly returned the entire string; now returns a portion.
|
||||||
|
@ -624,9 +624,6 @@ text_substring(Datum str, int32 start, int32 length, bool length_not_specified)
|
||||||
* Implements the SQL92 POSITION() function.
|
* Implements the SQL92 POSITION() function.
|
||||||
* Ref: A Guide To The SQL Standard, Date & Darwen, 1997
|
* Ref: A Guide To The SQL Standard, Date & Darwen, 1997
|
||||||
* - thomas 1997-07-27
|
* - thomas 1997-07-27
|
||||||
*
|
|
||||||
* Added multi-byte support.
|
|
||||||
* - Tatsuo Ishii 1998-4-21
|
|
||||||
*/
|
*/
|
||||||
Datum
|
Datum
|
||||||
textpos(PG_FUNCTION_ARGS)
|
textpos(PG_FUNCTION_ARGS)
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/init/postinit.c,v 1.114 2002/09/02 02:47:05 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/init/postinit.c,v 1.115 2002/09/03 21:45:42 petere Exp $
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
|
@ -69,7 +69,7 @@ static bool ThereIsAtLeastOneUser(void);
|
||||||
* creating any serious problems.
|
* creating any serious problems.
|
||||||
*
|
*
|
||||||
* This is also a handy place to fetch the database encoding info out
|
* This is also a handy place to fetch the database encoding info out
|
||||||
* of pg_database, if we are in MULTIBYTE mode.
|
* of pg_database.
|
||||||
*
|
*
|
||||||
* To avoid having to read pg_database more times than necessary
|
* To avoid having to read pg_database more times than necessary
|
||||||
* during session startup, this place is also fitting to set up any
|
* during session startup, this place is also fitting to set up any
|
||||||
|
@ -124,9 +124,8 @@ ReverifyMyDatabase(const char *name)
|
||||||
name);
|
name);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* OK, we're golden. Only other to-do item is to save the MULTIBYTE
|
* OK, we're golden. Only other to-do item is to save the
|
||||||
* encoding info out of the pg_database tuple --- or complain, if we
|
* encoding info out of the pg_database tuple.
|
||||||
* can't support it.
|
|
||||||
*/
|
*/
|
||||||
SetDatabaseEncoding(dbform->encoding);
|
SetDatabaseEncoding(dbform->encoding);
|
||||||
/* If we have no other source of client_encoding, use server encoding */
|
/* If we have no other source of client_encoding, use server encoding */
|
||||||
|
|
|
@ -2,7 +2,7 @@ common.c: public functions for both the backend and the frontend.
|
||||||
requires conv.c and wchar.c
|
requires conv.c and wchar.c
|
||||||
conv.c: static functions and a public table for code conversion
|
conv.c: static functions and a public table for code conversion
|
||||||
wchar.c: mostly static functions and a public table for mb string and
|
wchar.c: mostly static functions and a public table for mb string and
|
||||||
multi-byte conversion
|
multibyte conversion
|
||||||
mbutilc.c: public functions for the backend only.
|
mbutilc.c: public functions for the backend only.
|
||||||
requires conv.c and wchar.c
|
requires conv.c and wchar.c
|
||||||
wstrcmp.c: strcmp for mb
|
wstrcmp.c: strcmp for mb
|
||||||
|
@ -12,4 +12,4 @@ iso.c: a tool to generate KOI8 <--> ISO8859-5 conversion table
|
||||||
win.c: a tool to generate KOI8 <--> CP1251 conversion table
|
win.c: a tool to generate KOI8 <--> CP1251 conversion table
|
||||||
big5.c: conversion between BIG5 and Mule Internal Code(CNS 116643-1992
|
big5.c: conversion between BIG5 and Mule Internal Code(CNS 116643-1992
|
||||||
plane 1 and plane 2).
|
plane 1 and plane 2).
|
||||||
utftest.c: test driver for utf2wchar()
|
utftest.c: test driver for utf2wchar()
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* Encoding names and routines for work with it. All
|
* Encoding names and routines for work with it. All
|
||||||
* in this file is shared bedween FE and BE.
|
* in this file is shared bedween FE and BE.
|
||||||
*
|
*
|
||||||
* $Id: encnames.c,v 1.8 2002/06/13 08:28:54 ishii Exp $
|
* $Id: encnames.c,v 1.9 2002/09/03 21:45:43 petere Exp $
|
||||||
*/
|
*/
|
||||||
#ifdef FRONTEND
|
#ifdef FRONTEND
|
||||||
#include "postgres_fe.h"
|
#include "postgres_fe.h"
|
||||||
|
@ -44,7 +44,7 @@ pg_encname pg_encname_tbl[] =
|
||||||
}, /* IBM866 */
|
}, /* IBM866 */
|
||||||
{
|
{
|
||||||
"big5", PG_BIG5
|
"big5", PG_BIG5
|
||||||
}, /* Big5; Chinese for Taiwan Multi-byte set */
|
}, /* Big5; Chinese for Taiwan multibyte set */
|
||||||
{
|
{
|
||||||
"euccn", PG_EUC_CN
|
"euccn", PG_EUC_CN
|
||||||
}, /* EUC-CN; Extended Unix Code for
|
}, /* EUC-CN; Extended Unix Code for
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
* client encoding and server internal encoding.
|
* client encoding and server internal encoding.
|
||||||
* (currently mule internal code (mic) is used)
|
* (currently mule internal code (mic) is used)
|
||||||
* Tatsuo Ishii
|
* Tatsuo Ishii
|
||||||
* $Id: mbutils.c,v 1.33 2002/08/29 07:22:28 ishii Exp $
|
* $Id: mbutils.c,v 1.34 2002/09/03 21:45:43 petere Exp $
|
||||||
*/
|
*/
|
||||||
#include "postgres.h"
|
#include "postgres.h"
|
||||||
#include "access/xact.h"
|
#include "access/xact.h"
|
||||||
|
@ -347,28 +347,28 @@ perform_default_encoding_conversion(unsigned char *src, int len, bool is_client_
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* convert a multi-byte string to a wchar */
|
/* convert a multibyte string to a wchar */
|
||||||
int
|
int
|
||||||
pg_mb2wchar(const unsigned char *from, pg_wchar *to)
|
pg_mb2wchar(const unsigned char *from, pg_wchar *to)
|
||||||
{
|
{
|
||||||
return (*pg_wchar_table[DatabaseEncoding->encoding].mb2wchar_with_len) (from, to, strlen(from));
|
return (*pg_wchar_table[DatabaseEncoding->encoding].mb2wchar_with_len) (from, to, strlen(from));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* convert a multi-byte string to a wchar with a limited length */
|
/* convert a multibyte string to a wchar with a limited length */
|
||||||
int
|
int
|
||||||
pg_mb2wchar_with_len(const unsigned char *from, pg_wchar *to, int len)
|
pg_mb2wchar_with_len(const unsigned char *from, pg_wchar *to, int len)
|
||||||
{
|
{
|
||||||
return (*pg_wchar_table[DatabaseEncoding->encoding].mb2wchar_with_len) (from, to, len);
|
return (*pg_wchar_table[DatabaseEncoding->encoding].mb2wchar_with_len) (from, to, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* returns the byte length of a multi-byte word */
|
/* returns the byte length of a multibyte word */
|
||||||
int
|
int
|
||||||
pg_mblen(const unsigned char *mbstr)
|
pg_mblen(const unsigned char *mbstr)
|
||||||
{
|
{
|
||||||
return ((*pg_wchar_table[DatabaseEncoding->encoding].mblen) (mbstr));
|
return ((*pg_wchar_table[DatabaseEncoding->encoding].mblen) (mbstr));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* returns the length (counted as a wchar) of a multi-byte string */
|
/* returns the length (counted as a wchar) of a multibyte string */
|
||||||
int
|
int
|
||||||
pg_mbstrlen(const unsigned char *mbstr)
|
pg_mbstrlen(const unsigned char *mbstr)
|
||||||
{
|
{
|
||||||
|
@ -386,7 +386,7 @@ pg_mbstrlen(const unsigned char *mbstr)
|
||||||
return (len);
|
return (len);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* returns the length (counted as a wchar) of a multi-byte string
|
/* returns the length (counted as a wchar) of a multibyte string
|
||||||
(not necessarily NULL terminated) */
|
(not necessarily NULL terminated) */
|
||||||
int
|
int
|
||||||
pg_mbstrlen_with_len(const unsigned char *mbstr, int limit)
|
pg_mbstrlen_with_len(const unsigned char *mbstr, int limit)
|
||||||
|
@ -405,10 +405,10 @@ pg_mbstrlen_with_len(const unsigned char *mbstr, int limit)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* returns the byte length of a multi-byte string
|
* returns the byte length of a multibyte string
|
||||||
* (not necessarily NULL terminated)
|
* (not necessarily NULL terminated)
|
||||||
* that is no longer than limit.
|
* that is no longer than limit.
|
||||||
* this function does not break multi-byte word boundary.
|
* this function does not break multibyte word boundary.
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
pg_mbcliplen(const unsigned char *mbstr, int len, int limit)
|
pg_mbcliplen(const unsigned char *mbstr, int len, int limit)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* conversion functions between pg_wchar and multi-byte streams.
|
* conversion functions between pg_wchar and multibyte streams.
|
||||||
* Tatsuo Ishii
|
* Tatsuo Ishii
|
||||||
* $Id: wchar.c,v 1.28 2002/06/13 08:28:54 ishii Exp $
|
* $Id: wchar.c,v 1.29 2002/09/03 21:45:43 petere Exp $
|
||||||
*
|
*
|
||||||
* WIN1250 client encoding updated by Pavel Behal
|
* WIN1250 client encoding updated by Pavel Behal
|
||||||
*
|
*
|
||||||
|
@ -580,7 +580,7 @@ pg_mic_mblen(const unsigned char *mbstr)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Returns the byte length of a multi-byte word.
|
* Returns the byte length of a multibyte word.
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
pg_encoding_mblen(int encoding, const unsigned char *mbstr)
|
pg_encoding_mblen(int encoding, const unsigned char *mbstr)
|
||||||
|
@ -638,7 +638,7 @@ pg_verifymbstr(const unsigned char *mbstr, int len)
|
||||||
|
|
||||||
l = pg_mblen(mbstr);
|
l = pg_mblen(mbstr);
|
||||||
|
|
||||||
/* multi-byte letter? */
|
/* multibyte letter? */
|
||||||
if (l > 1)
|
if (l > 1)
|
||||||
{
|
{
|
||||||
for (i = 1; i < l; i++)
|
for (i = 1; i < l; i++)
|
||||||
|
@ -646,7 +646,7 @@ pg_verifymbstr(const unsigned char *mbstr, int len)
|
||||||
if (i > len || *(mbstr + i) == '\0' ||
|
if (i > len || *(mbstr + i) == '\0' ||
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* we assume that every muti-byte letter consists of bytes
|
* we assume that every multibyte letter consists of bytes
|
||||||
* being the 8th bit set
|
* being the 8th bit set
|
||||||
*/
|
*/
|
||||||
((*(mbstr + i) & 0x80) == 0))
|
((*(mbstr + i) & 0x80) == 0))
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
# Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
# Portions Copyright (c) 1994, Regents of the University of California
|
# Portions Copyright (c) 1994, Regents of the University of California
|
||||||
#
|
#
|
||||||
# $Header: /cvsroot/pgsql/src/bin/Makefile,v 1.38 2002/08/30 18:14:21 momjian Exp $
|
# $Header: /cvsroot/pgsql/src/bin/Makefile,v 1.39 2002/09/03 21:45:43 petere Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -14,11 +14,8 @@ top_builddir = ../..
|
||||||
include $(top_builddir)/src/Makefile.global
|
include $(top_builddir)/src/Makefile.global
|
||||||
|
|
||||||
DIRS := initdb initlocation ipcclean pg_ctl pg_dump pg_id \
|
DIRS := initdb initlocation ipcclean pg_ctl pg_dump pg_id \
|
||||||
psql scripts pg_config pg_controldata pg_resetxlog
|
psql scripts pg_config pg_controldata pg_resetxlog \
|
||||||
|
pg_encoding
|
||||||
ifdef MULTIBYTE
|
|
||||||
DIRS += pg_encoding
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(with_tcl), yes)
|
ifeq ($(with_tcl), yes)
|
||||||
DIRS += pgtclsh
|
DIRS += pgtclsh
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
# Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
# Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
# Portions Copyright (c) 1994, Regents of the University of California
|
# Portions Copyright (c) 1994, Regents of the University of California
|
||||||
#
|
#
|
||||||
# $Header: /cvsroot/pgsql/src/bin/initdb/Makefile,v 1.27 2002/06/20 20:29:41 momjian Exp $
|
# $Header: /cvsroot/pgsql/src/bin/initdb/Makefile,v 1.28 2002/09/03 21:45:43 petere Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -16,8 +16,7 @@ include $(top_builddir)/src/Makefile.global
|
||||||
all: initdb
|
all: initdb
|
||||||
|
|
||||||
initdb: initdb.sh $(top_builddir)/src/Makefile.global
|
initdb: initdb.sh $(top_builddir)/src/Makefile.global
|
||||||
sed -e 's/@MULTIBYTE@/$(MULTIBYTE)/g' \
|
sed -e 's/@VERSION@/$(VERSION)/g' \
|
||||||
-e 's/@VERSION@/$(VERSION)/g' \
|
|
||||||
-e 's,@SHELL@,$(SHELL),g' \
|
-e 's,@SHELL@,$(SHELL),g' \
|
||||||
-e 's,@bindir@,$(bindir),g' \
|
-e 's,@bindir@,$(bindir),g' \
|
||||||
-e 's,@datadir@,$(datadir),g' \
|
-e 's,@datadir@,$(datadir),g' \
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
# Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
# Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
# Portions Copyright (c) 1994, Regents of the University of California
|
# Portions Copyright (c) 1994, Regents of the University of California
|
||||||
#
|
#
|
||||||
# $Header: /cvsroot/pgsql/src/bin/initdb/Attic/initdb.sh,v 1.170 2002/08/31 17:14:28 tgl Exp $
|
# $Header: /cvsroot/pgsql/src/bin/initdb/Attic/initdb.sh,v 1.171 2002/09/03 21:45:43 petere Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -80,8 +80,6 @@ bindir='@bindir@'
|
||||||
# Note that "datadir" is not the directory we're initializing, it's
|
# Note that "datadir" is not the directory we're initializing, it's
|
||||||
# merely how Autoconf names PREFIX/share.
|
# merely how Autoconf names PREFIX/share.
|
||||||
datadir='@datadir@'
|
datadir='@datadir@'
|
||||||
# as set by configure --enable-multibyte[=XXX].
|
|
||||||
MULTIBYTE='@MULTIBYTE@'
|
|
||||||
|
|
||||||
|
|
||||||
# Check for echo -n vs echo \c
|
# Check for echo -n vs echo \c
|
||||||
|
@ -190,7 +188,7 @@ fi
|
||||||
# COMMAND LINE OPTIONS
|
# COMMAND LINE OPTIONS
|
||||||
|
|
||||||
# 0 is the default (non-)encoding
|
# 0 is the default (non-)encoding
|
||||||
MULTIBYTEID=0
|
ENCODINGID=0
|
||||||
|
|
||||||
# Set defaults:
|
# Set defaults:
|
||||||
debug=
|
debug=
|
||||||
|
@ -263,13 +261,13 @@ do
|
||||||
# The encoding of the template1 database. Defaults to what you chose
|
# The encoding of the template1 database. Defaults to what you chose
|
||||||
# at configure time. (see above)
|
# at configure time. (see above)
|
||||||
--encoding|-E)
|
--encoding|-E)
|
||||||
MULTIBYTE="$2"
|
ENCODING="$2"
|
||||||
shift;;
|
shift;;
|
||||||
--encoding=*)
|
--encoding=*)
|
||||||
MULTIBYTE=`echo $1 | sed 's/^--encoding=//'`
|
ENCODING=`echo $1 | sed 's/^--encoding=//'`
|
||||||
;;
|
;;
|
||||||
-E*)
|
-E*)
|
||||||
MULTIBYTE=`echo $1 | sed 's/^-E//'`
|
ENCODING=`echo $1 | sed 's/^-E//'`
|
||||||
;;
|
;;
|
||||||
# Locale flags
|
# Locale flags
|
||||||
--locale)
|
--locale)
|
||||||
|
@ -342,9 +340,7 @@ if [ "$usage" ]; then
|
||||||
echo "Options:"
|
echo "Options:"
|
||||||
echo " [-D, --pgdata] DATADIR Location for this database cluster"
|
echo " [-D, --pgdata] DATADIR Location for this database cluster"
|
||||||
echo " -W, --pwprompt Prompt for a password for the new superuser"
|
echo " -W, --pwprompt Prompt for a password for the new superuser"
|
||||||
if [ -n "$MULTIBYTE" ] ; then
|
echo " -E, --encoding ENCODING Set default encoding for new databases"
|
||||||
echo " -E, --encoding ENCODING Set default encoding for new databases"
|
|
||||||
fi
|
|
||||||
echo " --locale LOCALE Initialize database cluster with given locale"
|
echo " --locale LOCALE Initialize database cluster with given locale"
|
||||||
echo " --lc-collate, --lc-ctype, --lc-messages LOCALE"
|
echo " --lc-collate, --lc-ctype, --lc-messages LOCALE"
|
||||||
echo " --lc-monetary, --lc-numeric, --lc-time LOCALE"
|
echo " --lc-monetary, --lc-numeric, --lc-time LOCALE"
|
||||||
|
@ -363,25 +359,23 @@ if [ "$usage" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
# Resolve the multibyte encoding name
|
# Resolve the encoding name
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
if [ "$MULTIBYTE" ]
|
if [ "$ENCODING" ]
|
||||||
then
|
then
|
||||||
MULTIBYTEID=`$PGPATH/pg_encoding -b $MULTIBYTE`
|
ENCODINGID=`$PGPATH/pg_encoding -b $ENCODING`
|
||||||
if [ "$?" -ne 0 ]
|
if [ "$?" -ne 0 ]
|
||||||
then
|
then
|
||||||
(
|
(
|
||||||
echo "$CMDNAME: pg_encoding failed"
|
echo "$CMDNAME: pg_encoding failed"
|
||||||
echo
|
echo "Make sure the program was installed correctly."
|
||||||
echo "Perhaps you did not configure PostgreSQL for multibyte support or"
|
|
||||||
echo "the program was not successfully installed."
|
|
||||||
) 1>&2
|
) 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
if [ -z "$MULTIBYTEID" ]
|
if [ -z "$ENCODINGID" ]
|
||||||
then
|
then
|
||||||
echo "$CMDNAME: $MULTIBYTE is not a valid backend encoding name" 1>&2
|
echo "$CMDNAME: $ENCODING is not a valid backend encoding name" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
@ -418,7 +412,7 @@ then
|
||||||
(
|
(
|
||||||
echo
|
echo
|
||||||
echo "initdb variables:"
|
echo "initdb variables:"
|
||||||
for var in PGDATA datadir PGPATH MULTIBYTE MULTIBYTEID \
|
for var in PGDATA datadir PGPATH ENCODING ENCODINGID \
|
||||||
POSTGRES_SUPERUSERNAME POSTGRES_BKI \
|
POSTGRES_SUPERUSERNAME POSTGRES_BKI \
|
||||||
POSTGRES_DESCR POSTGRESQL_CONF_SAMPLE \
|
POSTGRES_DESCR POSTGRESQL_CONF_SAMPLE \
|
||||||
PG_HBA_SAMPLE PG_IDENT_SAMPLE ; do
|
PG_HBA_SAMPLE PG_IDENT_SAMPLE ; do
|
||||||
|
@ -569,7 +563,7 @@ echo "$short_version" > "$PGDATA/PG_VERSION" || exit_nicely
|
||||||
|
|
||||||
cat "$POSTGRES_BKI" \
|
cat "$POSTGRES_BKI" \
|
||||||
| sed -e "s/POSTGRES/$POSTGRES_SUPERUSERNAME/g" \
|
| sed -e "s/POSTGRES/$POSTGRES_SUPERUSERNAME/g" \
|
||||||
-e "s/ENCODING/$MULTIBYTEID/g" \
|
-e "s/ENCODING/$ENCODINGID/g" \
|
||||||
|
|
|
|
||||||
(
|
(
|
||||||
LC_COLLATE=`pg_getlocale COLLATE`
|
LC_COLLATE=`pg_getlocale COLLATE`
|
||||||
|
|
|
@ -43,13 +43,6 @@ CPP_PROJ=/nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D\
|
||||||
"_MBCS" /Fp"$(INTDIR)\psql.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c \
|
"_MBCS" /Fp"$(INTDIR)\psql.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c \
|
||||||
/I ..\..\include /I ..\..\interfaces\libpq /D "HAVE_STRDUP"
|
/I ..\..\include /I ..\..\interfaces\libpq /D "HAVE_STRDUP"
|
||||||
|
|
||||||
!IFDEF MULTIBYTE
|
|
||||||
!IFNDEF MBFLAGS
|
|
||||||
MBFLAGS="-DMULTIBYTE=$(MULTIBYTE)"
|
|
||||||
!ENDIF
|
|
||||||
CPP_PROJ=$(MBFLAGS) $(CPP_PROJ)
|
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
CPP_OBJS=.\Release/
|
CPP_OBJS=.\Release/
|
||||||
CPP_SBRS=.
|
CPP_SBRS=.
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
# IDENTIFICATION
|
# IDENTIFICATION
|
||||||
# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createdb,v 1.24 2002/08/10 16:57:32 petere Exp $
|
# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createdb,v 1.25 2002/09/03 21:45:43 petere Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -140,7 +140,7 @@ if [ "$usage" ]; then
|
||||||
echo " -O, --owner=OWNER Database user to own the new database"
|
echo " -O, --owner=OWNER Database user to own the new database"
|
||||||
echo " -D, --location=PATH Alternative place to store the database"
|
echo " -D, --location=PATH Alternative place to store the database"
|
||||||
echo " -T, --template=TEMPLATE Template database to copy"
|
echo " -T, --template=TEMPLATE Template database to copy"
|
||||||
echo " -E, --encoding=ENCODING Multibyte encoding for the database"
|
echo " -E, --encoding=ENCODING Encoding for the database"
|
||||||
echo " -h, --host=HOSTNAME Database server host"
|
echo " -h, --host=HOSTNAME Database server host"
|
||||||
echo " -p, --port=PORT Database server port"
|
echo " -p, --port=PORT Database server port"
|
||||||
echo " -U, --username=USERNAME Username to connect as"
|
echo " -U, --username=USERNAME Username to connect as"
|
||||||
|
|
|
@ -5,9 +5,6 @@
|
||||||
# finds oids that are duplicated in the system tables.
|
# finds oids that are duplicated in the system tables.
|
||||||
#
|
#
|
||||||
|
|
||||||
# no multibytes files
|
|
||||||
FILES=`ls pg_*.h |grep -v '_mb.h'`
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# The previous version did not use the -d option on uniq
|
# The previous version did not use the -d option on uniq
|
||||||
# so check here that it is supported.
|
# so check here that it is supported.
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: pg_control.h,v 1.8 2002/06/20 20:29:44 momjian Exp $
|
* $Id: pg_control.h,v 1.9 2002/09/03 21:45:43 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -113,7 +113,7 @@ typedef struct ControlFileData
|
||||||
/* flag indicating internal format of timestamp, interval, time */
|
/* flag indicating internal format of timestamp, interval, time */
|
||||||
uint32 enableIntTimes; /* int64 storage enabled? */
|
uint32 enableIntTimes; /* int64 storage enabled? */
|
||||||
|
|
||||||
/* active locales --- "C" if compiled without USE_LOCALE: */
|
/* active locales */
|
||||||
uint32 localeBuflen;
|
uint32 localeBuflen;
|
||||||
char lc_collate[LOCALE_NAME_BUFLEN];
|
char lc_collate[LOCALE_NAME_BUFLEN];
|
||||||
char lc_ctype[LOCALE_NAME_BUFLEN];
|
char lc_ctype[LOCALE_NAME_BUFLEN];
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: pg_database.h,v 1.26 2002/08/04 06:54:10 thomas Exp $
|
* $Id: pg_database.h,v 1.27 2002/09/03 21:45:43 petere Exp $
|
||||||
*
|
*
|
||||||
* NOTES
|
* NOTES
|
||||||
* the genbki.sh script reads this file and generates .bki
|
* the genbki.sh script reads this file and generates .bki
|
||||||
|
@ -35,7 +35,7 @@ CATALOG(pg_database) BOOTSTRAP BKI_SHARED_RELATION
|
||||||
{
|
{
|
||||||
NameData datname; /* database name */
|
NameData datname; /* database name */
|
||||||
int4 datdba; /* sysid of owner */
|
int4 datdba; /* sysid of owner */
|
||||||
int4 encoding; /* multibyte encoding, if any */
|
int4 encoding; /* character encoding */
|
||||||
bool datistemplate; /* allowed as CREATE DATABASE template? */
|
bool datistemplate; /* allowed as CREATE DATABASE template? */
|
||||||
bool datallowconn; /* new connections allowed? */
|
bool datallowconn; /* new connections allowed? */
|
||||||
Oid datlastsysoid; /* highest OID to consider a system OID */
|
Oid datlastsysoid; /* highest OID to consider a system OID */
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: pg_proc.h,v 1.268 2002/09/02 06:22:19 momjian Exp $
|
* $Id: pg_proc.h,v 1.269 2002/09/03 21:45:43 petere Exp $
|
||||||
*
|
*
|
||||||
* NOTES
|
* NOTES
|
||||||
* The script catalog/genbki.sh reads this file and generates .bki
|
* The script catalog/genbki.sh reads this file and generates .bki
|
||||||
|
@ -2137,7 +2137,7 @@ DESCR("convert int32 number to hex");
|
||||||
DATA(insert OID = 2090 ( to_hex PGNSP PGUID 12 f f t f i 1 25 "20" to_hex64 - _null_ ));
|
DATA(insert OID = 2090 ( to_hex PGNSP PGUID 12 f f t f i 1 25 "20" to_hex64 - _null_ ));
|
||||||
DESCR("convert int64 number to hex");
|
DESCR("convert int64 number to hex");
|
||||||
|
|
||||||
/* for multi-byte support */
|
/* for character set encoding support */
|
||||||
|
|
||||||
/* return database encoding name */
|
/* return database encoding name */
|
||||||
DATA(insert OID = 1039 ( getdatabaseencoding PGNSP PGUID 12 f f t f s 0 19 "" getdatabaseencoding - _null_ ));
|
DATA(insert OID = 1039 ( getdatabaseencoding PGNSP PGUID 12 f f t f s 0 19 "" getdatabaseencoding - _null_ ));
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: pg_wchar.h,v 1.42 2002/08/14 02:45:10 ishii Exp $ */
|
/* $Id: pg_wchar.h,v 1.43 2002/09/03 21:45:44 petere Exp $ */
|
||||||
|
|
||||||
#ifndef PG_WCHAR_H
|
#ifndef PG_WCHAR_H
|
||||||
#define PG_WCHAR_H
|
#define PG_WCHAR_H
|
||||||
|
@ -38,11 +38,11 @@ typedef unsigned int pg_wchar;
|
||||||
*/
|
*/
|
||||||
#define IS_LCPRV1(c) ((unsigned char)(c) == 0x9a || (unsigned char)(c) == 0x9b)
|
#define IS_LCPRV1(c) ((unsigned char)(c) == 0x9a || (unsigned char)(c) == 0x9b)
|
||||||
/*
|
/*
|
||||||
* Is a leading byte for "official" multi byte encodings?
|
* Is a leading byte for "official" multibyte encodings?
|
||||||
*/
|
*/
|
||||||
#define IS_LC2(c) ((unsigned char)(c) >= 0x90 && (unsigned char)(c) <= 0x99)
|
#define IS_LC2(c) ((unsigned char)(c) >= 0x90 && (unsigned char)(c) <= 0x99)
|
||||||
/*
|
/*
|
||||||
* Is a prefix byte for "private" multi byte encodings?
|
* Is a prefix byte for "private" multibyte encodings?
|
||||||
*/
|
*/
|
||||||
#define IS_LCPRV2(c) ((unsigned char)(c) == 0x9c || (unsigned char)(c) == 0x9d)
|
#define IS_LCPRV2(c) ((unsigned char)(c) == 0x9c || (unsigned char)(c) == 0x9d)
|
||||||
|
|
||||||
|
@ -118,7 +118,7 @@ typedef unsigned int pg_wchar;
|
||||||
#define LC_ARABIC_2_COLUMN 0xa8 /* Arabic 1-column (not supported) */
|
#define LC_ARABIC_2_COLUMN 0xa8 /* Arabic 1-column (not supported) */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Private multi byte encodings (0xf0-0xff)
|
* Private multibyte encodings (0xf0-0xff)
|
||||||
*/
|
*/
|
||||||
#define LC_INDIAN_1_COLUMN 0xf0/* Indian charset for 1-column width
|
#define LC_INDIAN_1_COLUMN 0xf0/* Indian charset for 1-column width
|
||||||
* glypps (not supported) */
|
* glypps (not supported) */
|
||||||
|
@ -250,9 +250,9 @@ typedef int (*mblen_converter) (const unsigned char *mbstr);
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
mb2wchar_with_len_converter mb2wchar_with_len; /* convert a multi-byte
|
mb2wchar_with_len_converter mb2wchar_with_len; /* convert a multibyte
|
||||||
* string to a wchar */
|
* string to a wchar */
|
||||||
mblen_converter mblen; /* returns the length of a multi-byte char */
|
mblen_converter mblen; /* returns the length of a multibyte char */
|
||||||
int maxmblen; /* max bytes for a char in this charset */
|
int maxmblen; /* max bytes for a char in this charset */
|
||||||
} pg_wchar_tbl;
|
} pg_wchar_tbl;
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: builtins.h,v 1.197 2002/08/29 07:22:29 ishii Exp $
|
* $Id: builtins.h,v 1.198 2002/09/03 21:45:44 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -661,7 +661,7 @@ extern Datum RI_FKey_setnull_upd(PG_FUNCTION_ARGS);
|
||||||
extern Datum RI_FKey_setdefault_del(PG_FUNCTION_ARGS);
|
extern Datum RI_FKey_setdefault_del(PG_FUNCTION_ARGS);
|
||||||
extern Datum RI_FKey_setdefault_upd(PG_FUNCTION_ARGS);
|
extern Datum RI_FKey_setdefault_upd(PG_FUNCTION_ARGS);
|
||||||
|
|
||||||
/* multibyte support functions */
|
/* encoding support functions */
|
||||||
extern Datum getdatabaseencoding(PG_FUNCTION_ARGS);
|
extern Datum getdatabaseencoding(PG_FUNCTION_ARGS);
|
||||||
extern Datum database_character_set(PG_FUNCTION_ARGS);
|
extern Datum database_character_set(PG_FUNCTION_ARGS);
|
||||||
extern Datum pg_client_encoding(PG_FUNCTION_ARGS);
|
extern Datum pg_client_encoding(PG_FUNCTION_ARGS);
|
||||||
|
|
|
@ -11,9 +11,8 @@ import java.util.*;
|
||||||
* example.Unicode <url> <user> <password>
|
* example.Unicode <url> <user> <password>
|
||||||
* where <url> must specify an existing database to which <user> and
|
* where <url> must specify an existing database to which <user> and
|
||||||
* <password> give access and which has UNICODE as its encoding.
|
* <password> give access and which has UNICODE as its encoding.
|
||||||
* (To create a database with UNICODE encoding, you need to compile
|
* (To create a database with UNICODE encoding, you need to run createdb
|
||||||
* postgres with "--enable-multibyte" and run createdb with the
|
* with the flag "-E UNICODE".)
|
||||||
* flag "-E UNICODE".)
|
|
||||||
*
|
*
|
||||||
* This test only produces output on error.
|
* This test only produces output on error.
|
||||||
*
|
*
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
#
|
#
|
||||||
# Copyright (c) 1994, Regents of the University of California
|
# Copyright (c) 1994, Regents of the University of California
|
||||||
#
|
#
|
||||||
# $Header: /cvsroot/pgsql/src/interfaces/libpq/Makefile,v 1.64 2002/07/27 20:10:05 petere Exp $
|
# $Header: /cvsroot/pgsql/src/interfaces/libpq/Makefile,v 1.65 2002/09/03 21:45:44 petere Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -22,12 +22,9 @@ override CPPFLAGS := -I$(srcdir) $(CPPFLAGS) -DFRONTEND -DSYSCONFDIR='"$(sysconf
|
||||||
|
|
||||||
OBJS= fe-auth.o fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o \
|
OBJS= fe-auth.o fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o \
|
||||||
pqexpbuffer.o dllist.o md5.o pqsignal.o fe-secure.o \
|
pqexpbuffer.o dllist.o md5.o pqsignal.o fe-secure.o \
|
||||||
|
wchar.o encnames.o \
|
||||||
$(filter inet_aton.o snprintf.o strerror.o, $(LIBOBJS))
|
$(filter inet_aton.o snprintf.o strerror.o, $(LIBOBJS))
|
||||||
|
|
||||||
ifdef MULTIBYTE
|
|
||||||
OBJS+= wchar.o encnames.o
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
# Add libraries that libpq depends (or might depend) on into the
|
# Add libraries that libpq depends (or might depend) on into the
|
||||||
# shared library link. (The order in which you list them here doesn't
|
# shared library link. (The order in which you list them here doesn't
|
||||||
|
@ -57,12 +54,8 @@ md5.c: $(backend_src)/libpq/md5.c
|
||||||
inet_aton.c snprintf.c strerror.c: %.c : $(top_srcdir)/src/port/%.c
|
inet_aton.c snprintf.c strerror.c: %.c : $(top_srcdir)/src/port/%.c
|
||||||
rm -f $@ && $(LN_S) $< .
|
rm -f $@ && $(LN_S) $< .
|
||||||
|
|
||||||
ifdef MULTIBYTE
|
encnames.c wchar.c : % : $(backend_src)/utils/mb/%
|
||||||
wchar.c : % : $(backend_src)/utils/mb/%
|
|
||||||
rm -f $@ && $(LN_S) $< .
|
rm -f $@ && $(LN_S) $< .
|
||||||
encnames.c : % : $(backend_src)/utils/mb/%
|
|
||||||
rm -f $@ && $(LN_S) $< .
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
install: all installdirs install-lib
|
install: all installdirs install-lib
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: libpq-int.h,v 1.55 2002/08/18 03:47:08 tgl Exp $
|
* $Id: libpq-int.h,v 1.56 2002/09/03 21:45:44 petere Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -180,7 +180,6 @@ typedef enum
|
||||||
{
|
{
|
||||||
SETENV_STATE_OPTION_SEND, /* About to send an Environment Option */
|
SETENV_STATE_OPTION_SEND, /* About to send an Environment Option */
|
||||||
SETENV_STATE_OPTION_WAIT, /* Waiting for above send to complete */
|
SETENV_STATE_OPTION_WAIT, /* Waiting for above send to complete */
|
||||||
/* these next two are only used in MULTIBYTE mode */
|
|
||||||
SETENV_STATE_ENCODINGS_SEND, /* About to send an "encodings" query */
|
SETENV_STATE_ENCODINGS_SEND, /* About to send an "encodings" query */
|
||||||
SETENV_STATE_ENCODINGS_WAIT, /* Waiting for query to complete */
|
SETENV_STATE_ENCODINGS_WAIT, /* Waiting for query to complete */
|
||||||
SETENV_STATE_IDLE
|
SETENV_STATE_IDLE
|
||||||
|
|
|
@ -6,29 +6,6 @@
|
||||||
|
|
||||||
!MESSAGE Building the Win32 static library...
|
!MESSAGE Building the Win32 static library...
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!IF "$(CFG)" == ""
|
|
||||||
CFG=Release
|
|
||||||
!MESSAGE No configuration specified. Defaulting to Release.
|
|
||||||
!MESSAGE
|
|
||||||
!ELSE
|
|
||||||
!MESSAGE Configuration "$(CFG)"
|
|
||||||
!MESSAGE
|
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
!IF "$(CFG)" != "Release" && "$(CFG)" != "MultibyteRelease"
|
|
||||||
!MESSAGE Invalid configuration "$(CFG)" specified.
|
|
||||||
!MESSAGE You can specify a configuration when running NMAKE
|
|
||||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
|
||||||
!MESSAGE
|
|
||||||
!MESSAGE NMAKE /f win32.mak CFG=[Release | MultibyteRelease ]
|
|
||||||
!MESSAGE
|
|
||||||
!MESSAGE Possible choices for configuration are:
|
|
||||||
!MESSAGE
|
|
||||||
!MESSAGE "Release" (Win32 Release DLL)
|
|
||||||
!MESSAGE "MultibyteRelease" (Win32 Release DLL with Multibyte support)
|
|
||||||
!MESSAGE
|
|
||||||
!ERROR An invalid configuration was specified.
|
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
!IFDEF DEBUG
|
!IFDEF DEBUG
|
||||||
OPT=/Od
|
OPT=/Od
|
||||||
|
@ -46,10 +23,6 @@ NULL=
|
||||||
NULL=nul
|
NULL=nul
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
!IF "$(CFG)" == "MultibyteRelease"
|
|
||||||
MULTIBYTE=1
|
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
CPP=cl.exe
|
CPP=cl.exe
|
||||||
RSC=rc.exe
|
RSC=rc.exe
|
||||||
|
|
||||||
|
@ -82,10 +55,8 @@ CLEAN :
|
||||||
-@erase "$(OUTDIR)\libpq.pch"
|
-@erase "$(OUTDIR)\libpq.pch"
|
||||||
-@erase "$(OUTDIR)\libpqdll.exp"
|
-@erase "$(OUTDIR)\libpqdll.exp"
|
||||||
-@erase "$(OUTDIR)\libpqdll.lib"
|
-@erase "$(OUTDIR)\libpqdll.lib"
|
||||||
!IFDEF MULTIBYTE
|
|
||||||
-@erase "$(INTDIR)\wchar.obj"
|
-@erase "$(INTDIR)\wchar.obj"
|
||||||
-@erase "$(INTDIR)\encnames.obj"
|
-@erase "$(INTDIR)\encnames.obj"
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
"$(OUTDIR)" :
|
"$(OUTDIR)" :
|
||||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||||
|
@ -94,16 +65,9 @@ CPP_PROJ=/nologo /MD /W3 /GX $(OPT) /I "..\..\include" /D "FRONTEND" $(DEBUGDEF)
|
||||||
"WIN32" /D "_WINDOWS" /Fp"$(INTDIR)\libpq.pch" /YX\
|
"WIN32" /D "_WINDOWS" /Fp"$(INTDIR)\libpq.pch" /YX\
|
||||||
/Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c /D "HAVE_VSNPRINTF" /D "HAVE_STRDUP"
|
/Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c /D "HAVE_VSNPRINTF" /D "HAVE_STRDUP"
|
||||||
|
|
||||||
!IFDEF MULTIBYTE
|
|
||||||
!IFNDEF MBFLAGS
|
|
||||||
MBFLAGS="-DMULTIBYTE=$(MULTIBYTE)"
|
|
||||||
!ENDIF
|
|
||||||
CPP_PROJ = $(CPP_PROJ) $(MBFLAGS)
|
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
CPP_OBJS=.\Release/
|
CPP_OBJS=.\Release/
|
||||||
CPP_SBRS=.
|
CPP_SBRS=.
|
||||||
|
|
||||||
LIB32=link.exe -lib
|
LIB32=link.exe -lib
|
||||||
LIB32_FLAGS=$(LOPT) /nologo /out:"$(OUTDIR)\libpq.lib"
|
LIB32_FLAGS=$(LOPT) /nologo /out:"$(OUTDIR)\libpq.lib"
|
||||||
LIB32_OBJS= \
|
LIB32_OBJS= \
|
||||||
|
@ -117,11 +81,9 @@ LIB32_OBJS= \
|
||||||
"$(INTDIR)\fe-misc.obj" \
|
"$(INTDIR)\fe-misc.obj" \
|
||||||
"$(INTDIR)\fe-print.obj" \
|
"$(INTDIR)\fe-print.obj" \
|
||||||
"$(INTDIR)\fe-secure.obj" \
|
"$(INTDIR)\fe-secure.obj" \
|
||||||
"$(INTDIR)\pqexpbuffer.obj"
|
"$(INTDIR)\pqexpbuffer.obj" \
|
||||||
|
"$(INTDIR)\wchar.obj" \
|
||||||
!IFDEF MULTIBYTE
|
"$(INTDIR)\encnames.obj"
|
||||||
LIB32_OBJS = $(LIB32_OBJS) "$(INTDIR)\wchar.obj" "$(INTDIR)\encnames.obj"
|
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libpq.res"
|
RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libpq.res"
|
||||||
|
|
||||||
|
@ -156,27 +118,23 @@ LINK32_OBJS= \
|
||||||
$(CPP_PROJ) ..\..\backend\lib\dllist.c
|
$(CPP_PROJ) ..\..\backend\lib\dllist.c
|
||||||
<<
|
<<
|
||||||
|
|
||||||
|
|
||||||
"$(OUTDIR)\md5.obj" : ..\..\backend\libpq\md5.c
|
"$(OUTDIR)\md5.obj" : ..\..\backend\libpq\md5.c
|
||||||
$(CPP) @<<
|
$(CPP) @<<
|
||||||
$(CPP_PROJ) ..\..\backend\libpq\md5.c
|
$(CPP_PROJ) ..\..\backend\libpq\md5.c
|
||||||
<<
|
<<
|
||||||
|
|
||||||
|
|
||||||
!IFDEF MULTIBYTE
|
|
||||||
"$(INTDIR)\wchar.obj" : ..\..\backend\utils\mb\wchar.c
|
"$(INTDIR)\wchar.obj" : ..\..\backend\utils\mb\wchar.c
|
||||||
$(CPP) @<<
|
$(CPP) @<<
|
||||||
$(CPP_PROJ) /I "." ..\..\backend\utils\mb\wchar.c
|
$(CPP_PROJ) /I "." ..\..\backend\utils\mb\wchar.c
|
||||||
<<
|
<<
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
|
|
||||||
!IFDEF MULTIBYTE
|
|
||||||
"$(INTDIR)\encnames.obj" : ..\..\backend\utils\mb\encnames.c
|
"$(INTDIR)\encnames.obj" : ..\..\backend\utils\mb\encnames.c
|
||||||
$(CPP) @<<
|
$(CPP) @<<
|
||||||
$(CPP_PROJ) /I "." ..\..\backend\utils\mb\encnames.c
|
$(CPP_PROJ) /I "." ..\..\backend\utils\mb\encnames.c
|
||||||
<<
|
<<
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
|
|
||||||
.c{$(CPP_OBJS)}.obj::
|
.c{$(CPP_OBJS)}.obj::
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
# $Header: /cvsroot/pgsql/src/test/locale/Makefile,v 1.7 2001/01/19 19:15:33 petere Exp $
|
# $Header: /cvsroot/pgsql/src/test/locale/Makefile,v 1.8 2002/09/03 21:45:44 petere Exp $
|
||||||
|
|
||||||
subdir = src/test/locale
|
subdir = src/test/locale
|
||||||
top_builddir = ../../..
|
top_builddir = ../../..
|
||||||
include $(top_builddir)/src/Makefile.global
|
include $(top_builddir)/src/Makefile.global
|
||||||
|
|
||||||
|
|
||||||
PROGS = test-pgsql-locale test-ctype
|
PROGS = test-ctype
|
||||||
DIRS = de_DE.ISO8859-1 gr_GR.ISO8859-7 koi8-r koi8-to-win1251
|
DIRS = de_DE.ISO8859-1 gr_GR.ISO8859-7 koi8-r koi8-to-win1251
|
||||||
|
|
||||||
all: $(PROGS)
|
all: $(PROGS)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
$Header: /cvsroot/pgsql/src/test/locale/README,v 1.3 2001/01/19 19:43:27 petere Exp $
|
$Header: /cvsroot/pgsql/src/test/locale/README,v 1.4 2002/09/03 21:45:44 petere Exp $
|
||||||
|
|
||||||
This directory contains a set of tests for locales. I provided one C
|
This directory contains a set of tests for locales. I provided one C
|
||||||
program test-ctype.c to test CTYPE support in libc and the installed
|
program test-ctype.c to test CTYPE support in libc and the installed
|
||||||
|
@ -11,11 +11,9 @@ for example
|
||||||
gmake check-koi8-r
|
gmake check-koi8-r
|
||||||
|
|
||||||
Currently, there are only tests for a few locales available. The script
|
Currently, there are only tests for a few locales available. The script
|
||||||
'runall' calls test-pgsql-locale to test whether locale support has been
|
'runall' calls test-ctype to test libc and locale data, test-sort.pl
|
||||||
compiled into PostgreSQL, test-ctype to test libc and locale data,
|
(uncomment test-sort.py, if you have a Python interpreter installed), and
|
||||||
test-sort.pl (uncomment test-sort.py, if you have a Python interpreter
|
does tests on PostgreSQL with the provided SQL script files.
|
||||||
installed), and does tests on PostgreSQL with the provided SQL script
|
|
||||||
files.
|
|
||||||
|
|
||||||
To add locale tests one needs to create a directory $locale and create
|
To add locale tests one needs to create a directory $locale and create
|
||||||
a Makefile (and other files) similar to koi8-r/*. Actually, the simplest
|
a Makefile (and other files) similar to koi8-r/*. Actually, the simplest
|
||||||
|
|
|
@ -3,9 +3,6 @@
|
||||||
PATH=..:$PATH
|
PATH=..:$PATH
|
||||||
|
|
||||||
echo "Testing PostgreSQL compilation..."
|
echo "Testing PostgreSQL compilation..."
|
||||||
if ! test-pgsql-locale; then
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
LC_CTYPE=de_DE.ISO8859-1
|
LC_CTYPE=de_DE.ISO8859-1
|
||||||
LC_COLLATE=$LC_CTYPE
|
LC_COLLATE=$LC_CTYPE
|
||||||
|
|
|
@ -3,9 +3,6 @@
|
||||||
PATH=..:$PATH
|
PATH=..:$PATH
|
||||||
|
|
||||||
echo "Testing PostgreSQL compilation..."
|
echo "Testing PostgreSQL compilation..."
|
||||||
if ! test-pgsql-locale; then
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
LC_CTYPE=gr_GR.ISO8859-7
|
LC_CTYPE=gr_GR.ISO8859-7
|
||||||
LC_COLLATE=$LC_CTYPE
|
LC_COLLATE=$LC_CTYPE
|
||||||
|
|
|
@ -3,9 +3,6 @@
|
||||||
PATH=..:$PATH
|
PATH=..:$PATH
|
||||||
|
|
||||||
echo "Testing PostgreSQL compilation..."
|
echo "Testing PostgreSQL compilation..."
|
||||||
if ! test-pgsql-locale; then
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
LC_CTYPE=ru_RU.KOI8-R
|
LC_CTYPE=ru_RU.KOI8-R
|
||||||
LC_COLLATE=$LC_CTYPE
|
LC_COLLATE=$LC_CTYPE
|
||||||
|
|
|
@ -3,9 +3,6 @@
|
||||||
PATH=..:$PATH
|
PATH=..:$PATH
|
||||||
|
|
||||||
echo "Testing PostgreSQL compilation..."
|
echo "Testing PostgreSQL compilation..."
|
||||||
if ! test-pgsql-locale; then
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
LC_CTYPE=ru_RU.KOI8-R
|
LC_CTYPE=ru_RU.KOI8-R
|
||||||
LC_COLLATE=$LC_CTYPE
|
LC_COLLATE=$LC_CTYPE
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
|
|
||||||
#include "postgres.h"
|
|
||||||
|
|
||||||
int
|
|
||||||
main()
|
|
||||||
{
|
|
||||||
#ifdef USE_LOCALE
|
|
||||||
printf("PostgreSQL compiled with locale support\n");
|
|
||||||
return 0;
|
|
||||||
#else
|
|
||||||
printf("PostgreSQL compiled without locale support\n");
|
|
||||||
return 1;
|
|
||||||
#endif
|
|
||||||
}
|
|
|
@ -1,9 +1,8 @@
|
||||||
README for MB(multi-byte) regression test
|
README for multibyte regression test
|
||||||
1998/7/22
|
1998/7/22
|
||||||
Tatsuo Ishii
|
Tatsuo Ishii
|
||||||
|
|
||||||
This directory contains a set of tests for MB(multi-byte) supporting
|
This directory contains a set of tests for multibyte supporting
|
||||||
extentions for PostgreSQL. To run the test, simply type:
|
extentions for PostgreSQL. To run the test, simply type:
|
||||||
|
|
||||||
% mbregress.sh
|
% mbregress.sh
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
# IDENTIFICATION
|
# IDENTIFICATION
|
||||||
# $Header: /cvsroot/pgsql/src/test/regress/GNUmakefile,v 1.38 2002/07/02 05:43:34 momjian Exp $
|
# $Header: /cvsroot/pgsql/src/test/regress/GNUmakefile,v 1.39 2002/09/03 21:45:44 petere Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -22,6 +22,9 @@ override CFLAGS += $(CFLAGS_SL)
|
||||||
|
|
||||||
override DLLLIBS := $(BE_DLLLIBS) $(DLLLIBS)
|
override DLLLIBS := $(BE_DLLLIBS) $(DLLLIBS)
|
||||||
|
|
||||||
|
# default encoding
|
||||||
|
MULTIBYTE = SQL_ASCII
|
||||||
|
|
||||||
|
|
||||||
##
|
##
|
||||||
## Prepare for tests
|
## Prepare for tests
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# $Header: /cvsroot/pgsql/src/win32.mak,v 1.7 2002/08/22 00:15:08 scrappy Exp $
|
# $Header: /cvsroot/pgsql/src/win32.mak,v 1.8 2002/09/03 21:45:41 petere Exp $
|
||||||
|
|
||||||
# Makefile for Microsoft Visual C++ 5.0 (or compat)
|
# Makefile for Microsoft Visual C++ 5.0 (or compat)
|
||||||
# Top-file makefile for Win32 parts of postgresql.
|
# Top-file makefile for Win32 parts of postgresql.
|
||||||
|
@ -10,10 +10,6 @@ NULL=
|
||||||
NULL=nul
|
NULL=nul
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
!IFDEF MULTIBYTE
|
|
||||||
MAKEMACRO = "MULTIBYTE=$(MULTIBYTE)"
|
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
ALL:
|
ALL:
|
||||||
cd include
|
cd include
|
||||||
if not exist pg_config.h copy pg_config.h.win32 pg_config.h
|
if not exist pg_config.h copy pg_config.h.win32 pg_config.h
|
||||||
|
|
Loading…
Reference in New Issue