aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--newlib/ChangeLog117
-rw-r--r--newlib/libc/Makefile.in1
-rw-r--r--newlib/libc/argz/Makefile.in1
-rwxr-xr-xnewlib/libc/configure39
-rw-r--r--newlib/libc/configure.in44
-rw-r--r--newlib/libc/ctype/Makefile.in1
-rw-r--r--newlib/libc/errno/Makefile.in1
-rw-r--r--newlib/libc/iconv/Makefile.in1
-rw-r--r--newlib/libc/iconv/README.TODO9
-rw-r--r--newlib/libc/iconv/ccs/Makefile.am2
-rw-r--r--newlib/libc/iconv/ccs/Makefile.in3
-rw-r--r--newlib/libc/iconv/ccs/README.CCS.SOURCES2
-rw-r--r--newlib/libc/iconv/ccs/big5.c8
-rw-r--r--newlib/libc/iconv/ccs/binary/Makefile.in1
-rw-r--r--newlib/libc/iconv/ccs/binary/big5.cctbin98362 -> 98320 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/cns11643_plane1.cctbin67898 -> 67856 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/cns11643_plane14.cctbin61754 -> 61712 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/cns11643_plane2.cctbin64570 -> 64528 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/cp775.cctbin4154 -> 4112 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/cp850.cctbin3642 -> 3600 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/cp852.cctbin3642 -> 3600 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/cp855.cctbin3642 -> 3600 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/cp866.cctbin4154 -> 4112 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/gb_2312_80.cctbin71994 -> 71952 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/iso_8859_1.cctbin2106 -> 2064 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/iso_8859_15.cctbin3130 -> 3088 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/iso_8859_2.cctbin3130 -> 3088 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/iso_8859_4.cctbin3130 -> 3088 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/iso_8859_5.cctbin3130 -> 3088 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/jis_x0201.cctbin3130 -> 3088 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/jis_x0208_1983.cctbin68922 -> 68880 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/jis_x0212_1990.cctbin64058 -> 64016 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/koi8_r.cctbin4154 -> 4112 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/koi8_u.cctbin4154 -> 4112 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/ksx1001.cctbin98618 -> 98576 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/shift_jis.cctbin70202 -> 70160 bytes
-rw-r--r--newlib/libc/iconv/ccs/binary/us_ascii.cctbin1850 -> 1808 bytes
-rw-r--r--newlib/libc/iconv/ccs/cns11643_plane1.c8
-rw-r--r--newlib/libc/iconv/ccs/cns11643_plane14.c8
-rw-r--r--newlib/libc/iconv/ccs/cns11643_plane2.c8
-rw-r--r--newlib/libc/iconv/ccs/cp775.c8
-rw-r--r--newlib/libc/iconv/ccs/cp850.c8
-rw-r--r--newlib/libc/iconv/ccs/cp852.c8
-rw-r--r--newlib/libc/iconv/ccs/cp855.c8
-rw-r--r--newlib/libc/iconv/ccs/cp866.c8
-rw-r--r--newlib/libc/iconv/ccs/gb_2312_80.c8
-rw-r--r--newlib/libc/iconv/ccs/iconv_mktbl20
-rw-r--r--newlib/libc/iconv/ccs/iso_8859_1.c8
-rw-r--r--newlib/libc/iconv/ccs/iso_8859_15.c8
-rw-r--r--newlib/libc/iconv/ccs/iso_8859_2.c8
-rw-r--r--newlib/libc/iconv/ccs/iso_8859_4.c8
-rw-r--r--newlib/libc/iconv/ccs/iso_8859_5.c8
-rw-r--r--newlib/libc/iconv/ccs/jis_x0201.c8
-rw-r--r--newlib/libc/iconv/ccs/jis_x0208_1983.c8
-rw-r--r--newlib/libc/iconv/ccs/jis_x0212_1990.c8
-rw-r--r--newlib/libc/iconv/ccs/koi8_r.c8
-rw-r--r--newlib/libc/iconv/ccs/koi8_u.c8
-rw-r--r--newlib/libc/iconv/ccs/ksx1001.c8
-rw-r--r--newlib/libc/iconv/ccs/shift_jis.c8
-rw-r--r--newlib/libc/iconv/ccs/us_ascii.c8
-rw-r--r--newlib/libc/iconv/ces/Makefile.am2
-rw-r--r--newlib/libc/iconv/ces/Makefile.in3
-rw-r--r--newlib/libc/iconv/ces/euc-jp.c11
-rw-r--r--newlib/libc/iconv/ces/euc-kr.c11
-rw-r--r--newlib/libc/iconv/ces/euc-tw.c11
-rw-r--r--newlib/libc/iconv/ces/gb2312.c11
-rw-r--r--newlib/libc/iconv/ces/iso-10646-ucs-2.c10
-rw-r--r--newlib/libc/iconv/ces/iso-10646-ucs-4.c10
-rw-r--r--newlib/libc/iconv/ces/ucs-2-internal.c10
-rw-r--r--newlib/libc/iconv/ces/ucs-4-internal.c10
-rw-r--r--newlib/libc/iconv/ces/utf-16.c10
-rw-r--r--newlib/libc/iconv/ces/utf-8.c10
-rw-r--r--newlib/libc/iconv/charset.aliases8
-rw-r--r--newlib/libc/iconv/lib/Makefile.am2
-rw-r--r--newlib/libc/iconv/lib/Makefile.in3
-rw-r--r--newlib/libc/iconv/lib/aliases.c47
-rw-r--r--newlib/libc/iconv/lib/bialiasesi.c94
-rw-r--r--newlib/libc/iconv/lib/biccs.c193
-rw-r--r--newlib/libc/iconv/lib/bices.c89
-rw-r--r--newlib/libc/iconv/lib/ccs.c85
-rw-r--r--newlib/libc/iconv/lib/ces.c48
-rw-r--r--newlib/libc/iconv/lib/ces_euc.c67
-rw-r--r--newlib/libc/iconv/lib/ces_iso2022.c77
-rw-r--r--newlib/libc/iconv/lib/ces_table.c11
-rw-r--r--newlib/libc/iconv/lib/converter.c47
-rw-r--r--newlib/libc/iconv/lib/deps.h70
-rw-r--r--newlib/libc/iconv/lib/endian.h10
-rw-r--r--newlib/libc/iconv/lib/iconv.c15
-rw-r--r--newlib/libc/iconv/lib/loaddata.c7
-rw-r--r--newlib/libc/iconv/lib/local.h96
-rw-r--r--newlib/libc/locale/Makefile.in1
-rw-r--r--newlib/libc/misc/Makefile.in1
-rw-r--r--newlib/libc/posix/Makefile.in1
-rw-r--r--newlib/libc/reent/Makefile.in1
-rw-r--r--newlib/libc/search/Makefile.in1
-rw-r--r--newlib/libc/signal/Makefile.in1
-rw-r--r--newlib/libc/stdio/Makefile.in1
-rw-r--r--newlib/libc/stdio64/Makefile.in1
-rw-r--r--newlib/libc/stdlib/Makefile.in1
-rw-r--r--newlib/libc/string/Makefile.in1
-rw-r--r--newlib/libc/syscalls/Makefile.in1
-rw-r--r--newlib/libc/time/Makefile.in1
-rw-r--r--newlib/libc/unix/Makefile.in1
-rw-r--r--newlib/testsuite/newlib.iconv/iconv.exp32
-rw-r--r--newlib/testsuite/newlib.iconv/iconvjp.c979
-rw-r--r--newlib/testsuite/newlib.iconv/iconvnm.c113
-rw-r--r--newlib/testsuite/newlib.iconv/iconvru.c489
107 files changed, 2292 insertions, 838 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog
index 9e58623..4a52dee 100644
--- a/newlib/ChangeLog
+++ b/newlib/ChangeLog
@@ -1,3 +1,120 @@
+2004-01-27 Artem B. Bityuckiy <abitytsky@softminecorp.com>
+
+ * configure.in: Add support to generate iconv converter flags
+ for newlib.h
+ * newlib.hin: Add iconv converter flags.
+ * configure: Regenerated.
+ * libc/Makefile.in: Ditto.
+ * libc/configure.in: Moved iconv converter parsing logic to
+ top level newlib configure.in.
+ * libc/configure: Regenerated.
+ * libc/iconv/Makefile.in: Ditto.
+ * libc/iconv/README.TODO
+ * libc/iconv/charset.aliases: Remove wrong BE aliases for
+ UCS2/UCS4/UTF8.
+ * libc/iconv/ccs/Makefile.am: Remove C flag setting now that
+ newlib.h can be used.
+ * libc/iconv/ces/Makefile.am: Ditto.
+ * libc/iconv/lib/Makefile.am: Ditto.
+ * libc/iconv/ccs/Makefile.in: Regenerated.
+ * libc/iconv/ces/Makefile.in: Ditto.
+ * libc/iconv/lib/Makefile.in: Ditto.
+ * libc/iconv/ccs/README.CCS.SOURCES: Updated.
+ * libc/iconv/ccs/iconv_mktbl: Don't write junk strings to binaries.
+ * libc/iconv/ccs/big5.c: Switch to use new underscored flags
+ defined in newlib.h.
+ * libc/iconv/ccs/cns11643_plane1.c: Ditto.
+ * libc/iconv/ccs/cns11643_plane14.c: Ditto.
+ * libc/iconv/ccs/cns11643_plane2.c: Ditto.
+ * libc/iconv/ccs/cp775.c: Ditto.
+ * libc/iconv/ccs/cp850.c: Ditto.
+ * libc/iconv/ccs/cp852.c: Ditto.
+ * libc/iconv/ccs/cp855.c: Ditto.
+ * libc/iconv/ccs/cp866.c: Ditto.
+ * libc/iconv/ccs/gb_2312_80.c: Ditto.
+ * libc/iconv/ccs/iso_8859_1.c: Ditto.
+ * libc/iconv/ccs/iso_8859_15.c: Ditto.
+ * libc/iconv/ccs/iso_8859_2.c: Ditto.
+ * libc/iconv/ccs/iso_8859_4.c: Ditto.
+ * libc/iconv/ccs/iso_8859_5.c: Ditto.
+ * libc/iconv/ccs/jis_x0201.c: Ditto.
+ * libc/iconv/ccs/jis_x0208_1983.c: Ditto.
+ * libc/iconv/ccs/jis_x0212_1990.c: Ditto.
+ * libc/iconv/ccs/koi8_r.c: Ditto.
+ * libc/iconv/ccs/koi8_u.c: Ditto.
+ * libc/iconv/ccs/ksx1001.c: Ditto.
+ * libc/iconv/ccs/shift_jis.c: Ditto.
+ * libc/iconv/ccs/us_ascii.c: Ditto.
+ * libc/iconv/ccs/binary/big5.cct: Newly generated.
+ * libc/iconv/ccs/binary/cns11643_plane1.cct: Ditto.
+ * libc/iconv/ccs/binary/cns11643_plane14.cct: Ditto.
+ * libc/iconv/ccs/binary/cns11643_plane2.cct: Ditto.
+ * libc/iconv/ccs/binary/cp775.cct: Ditto.
+ * libc/iconv/ccs/binary/cp850.cct: Ditto.
+ * libc/iconv/ccs/binary/cp852.cct: Ditto.
+ * libc/iconv/ccs/binary/cp855.cct: Ditto.
+ * libc/iconv/ccs/binary/cp866.cct: Ditto.
+ * libc/iconv/ccs/binary/gb_2312_80.cct: Ditto.
+ * libc/iconv/ccs/binary/iso_8859_1.cct: Ditto.
+ * libc/iconv/ccs/binary/iso_8859_15.cct: Ditto.
+ * libc/iconv/ccs/binary/iso_8859_2.cct: Ditto.
+ * libc/iconv/ccs/binary/iso_8859_4.cct: Ditto.
+ * libc/iconv/ccs/binary/iso_8859_5.cct: Ditto.
+ * libc/iconv/ccs/binary/jis_x0201.cct: Ditto.
+ * libc/iconv/ccs/binary/jis_x0208_1983.cct: Ditto.
+ * libc/iconv/ccs/binary/jis_x0212_1990.cct: Ditto.
+ * libc/iconv/ccs/binary/koi8_r.cct: Ditto.
+ * libc/iconv/ccs/binary/koi8_u.cct: Ditto.
+ * libc/iconv/ccs/binary/ksx1001.cct: Ditto.
+ * libc/iconv/ccs/binary/shift_jis.cct: Ditto.
+ * libc/iconv/ccs/binary/us_ascii.cct: Ditto.
+ * libc/iconv/lib/bialiasesi.c: Sync with charset.aliases.
+ * libc/iconv/ces/euc-jp.c: Use newlib.h macros.
+ * libc/iconv/ces/euc-kr.c: Ditto.
+ * libc/iconv/ces/euc-tw.c: Ditto.
+ * libc/iconv/ces/gb2312.c: Ditto.
+ * libc/iconv/ces/iso-10646-ucs-2.c: Ditto.
+ * libc/iconv/ces/iso-10646-ucs-4.c: Ditto.
+ * libc/iconv/ces/ucs-2-internal.c: Ditto.
+ * libc/iconv/ces/ucs-4-internal.c: Ditto.
+ * libc/iconv/ces/utf-16.c: Ditto.
+ * libc/iconv/ces/utf-8.c: Ditto.
+ * libc/iconv/lib/aliases.c: Ditto.
+ * libc/iconv/lib/biccs.c: Ditto.
+ * libc/iconv/lib/bices.c: Ditto.
+ * libc/iconv/lib/ccs.c: Ditto.
+ * libc/iconv/lib/ces.c: Ditto.
+ * libc/iconv/lib/ces_euc.c: Ditto.
+ * libc/iconv/lib/ces_iso2022.c: Ditto.
+ * libc/iconv/lib/ces_table.c: Ditto.
+ * libc/iconv/lib/converter.c: Ditto.
+ * libc/iconv/lib/deps.h: Ditto.
+ * libc/iconv/lib/endian.h: Ditto.
+ * libc/iconv/lib/iconv.c: Ditto.
+ * libc/iconv/lib/loaddata.c: Ditto.
+ * libc/iconv/lib/local.h: Include newlib.h.
+ * libc/argz/Makefile.in: Regenerated.
+ * libc/ctype/Makefile.in: Ditto.
+ * libc/errno/Makefile.in: Ditto.
+ * libc/iconv/ccs/binary/Makefile.in: Ditto.
+ * libc/locale/Makefile.in: Ditto.
+ * libc/misc/Makefile.in: Ditto.
+ * libc/posix/Makefile.in: Ditto.
+ * libc/reent/Makefile.in: Ditto.
+ * libc/search/Makefile.in: Ditto.
+ * libc/signal/Makefile.in: Ditto.
+ * libc/stdio/Makefile.in: Ditto.
+ * libc/stdio64/Makefile.in: Ditto.
+ * libc/stdlib/Makefile.in: Ditto.
+ * libc/string/Makefile.in: Ditto.
+ * libc/syscalls/Makefile.in: Ditto.
+ * libc/time/Makefile.in: Ditto.
+ * libc/unix/Makefile.in: Ditto.
+ * testsuite/newlib.iconv/iconv.exp: New file.
+ * testsuite/newlib.iconv/iconvjp.c: Ditto.
+ * testsuite/newlib.iconv/iconvnm.c: Ditto.
+ * testsuite/newlib.iconv/iconvru.c: Ditto.
+
2004-01-23 Artem B. Bityuckiy <abitytsky@softminecorp.com>
* acinclude.m4 (--enable-newlib-iconv): New configuration option.
diff --git a/newlib/libc/Makefile.in b/newlib/libc/Makefile.in
index 1d84bd5..14f06d4 100644
--- a/newlib/libc/Makefile.in
+++ b/newlib/libc/Makefile.in
@@ -91,7 +91,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/argz/Makefile.in b/newlib/libc/argz/Makefile.in
index a5e953d..719da53 100644
--- a/newlib/libc/argz/Makefile.in
+++ b/newlib/libc/argz/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/configure b/newlib/libc/configure
index d5e4c13..2e1c0e9 100755
--- a/newlib/libc/configure
+++ b/newlib/libc/configure
@@ -3158,49 +3158,15 @@ fi
-if test x${newlib_iconv} != x; then
-
-if test 1 = 1; then
+
+if test x${newlib_iconv} != x; then
ENABLE_NEWLIB_ICONV_TRUE=
ENABLE_NEWLIB_ICONV_FALSE='#'
else
ENABLE_NEWLIB_ICONV_TRUE='#'
ENABLE_NEWLIB_ICONV_FALSE=
fi
- NEWLIB_CFLAGS="${NEWLIB_CFLAGS} -DENABLE_ICONV"
-fi;
-
-if test "x${builtin_converters}" != "x"; then
-
- if test x${newlib_iconv} = x; then
- { echo "configure: error: --enable-newlib-builtin-converters option can't be used if iconv library is disabled - use --enable-newlib-iconv to enable it" 1>&2; exit 1; }
- fi
-
- builtin_converters=`echo "${builtin_converters}" | sed -e 's/,/ /g' -e 's/-/_/g' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
-
- available_converters=`cat "${srcdir}/iconv/charset.aliases" | sed -e '/#/d' | sed -e 'N; s/\n //;'`
-
- builtin_converters1="${builtin_converters}"
- builtin_converters=""
- for converter in ${builtin_converters1}; do
- result=`echo "${available_converters}" | grep -e "\(^\| \)${converter}\( \|\$\)"`
- if test $? != "0"; then
- { echo "configure: error: ${converter} is not supported - see ${srcdir}/iconv/charset.aliases file for the list of available converters" 1>&2; exit 1; }
- fi
- converter1=`echo "${result}" | sed -e 's/\(^[^ ]*\).*$/\1/'`
- builtin_converters="${builtin_converters} ${converter1}"
- done
-
- for converter in ${builtin_converters}; do
- opt=ICONV_CONVERTER_`echo "${converter}" | sed -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
- NEWLIB_ICONV_CFLAGS="${NEWLIB_ICONV_CFLAGS} -D${opt}"
- done
-
-else
- NEWLIB_ICONV_CFLAGS=
-fi;
-
if test -n "${machine_dir}"; then
if test "${use_libtool}" = "yes"; then
@@ -3443,7 +3409,6 @@ s%@extra_dir@%$extra_dir%g
s%@LIBC_SYS_LIB@%$LIBC_SYS_LIB%g
s%@ENABLE_NEWLIB_ICONV_TRUE@%$ENABLE_NEWLIB_ICONV_TRUE%g
s%@ENABLE_NEWLIB_ICONV_FALSE@%$ENABLE_NEWLIB_ICONV_FALSE%g
-s%@NEWLIB_ICONV_CFLAGS@%$NEWLIB_ICONV_CFLAGS%g
s%@LIBC_MACHINE_LIB@%$LIBC_MACHINE_LIB%g
CEOF
diff --git a/newlib/libc/configure.in b/newlib/libc/configure.in
index d2d8677..0b6f276 100644
--- a/newlib/libc/configure.in
+++ b/newlib/libc/configure.in
@@ -123,49 +123,7 @@ AC_SUBST(LIBC_SYS_LIB)
AC_SUBST(sys_dir)
dnl iconv library will be compiled if --enable-newlib-iconv option is enabled
-if test x${newlib_iconv} != x; then
- AM_CONDITIONAL(ENABLE_NEWLIB_ICONV, test 1 = 1)
- NEWLIB_CFLAGS="${NEWLIB_CFLAGS} -DENABLE_ICONV"
-fi;
-
-dnl Parse --enable-newlib-builtin-converters option argument
-if test "x${builtin_converters}" != "x"; then
-
- dnl Check that --enable-newlib-iconv was enabled
- if test x${newlib_iconv} = x; then
- AC_MSG_ERROR(--enable-newlib-builtin-converters option can't be used if iconv library is disabled - use --enable-newlib-iconv to enable it)
- fi
-
- dnl Normalize converter names and delete commas
- builtin_converters=`echo "${builtin_converters}" | sed -e 's/,/ /g' -e 's/-/_/g' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
-
- dnl Get the list of available converters excluding comments
- dnl Join line with previous if the first character is whitespace
- available_converters=`cat "${srcdir}/iconv/charset.aliases" | sed -e '/#/d' | sed -e 'N; s/\n //;'`
-
- dnl Check if required converters are supported
- dnl Convert aliases to "official" names
- builtin_converters1="${builtin_converters}"
- builtin_converters=""
- for converter in ${builtin_converters1}; do
- result=`echo "${available_converters}" | grep -e "\(^\| \)${converter}\( \|\$\)"`
- if test $? != "0"; then
- AC_MSG_ERROR(${converter} is not supported - see ${srcdir}/iconv/charset.aliases file for the list of available converters)
- fi
- converter1=`echo "${result}" | sed -e 's/\(^[[^ ]]*\).*$/\1/'`
- builtin_converters="${builtin_converters} ${converter1}"
- done
-
- dnl Define appropriate -D options
- for converter in ${builtin_converters}; do
- opt=ICONV_CONVERTER_`echo "${converter}" | sed -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
- NEWLIB_ICONV_CFLAGS="${NEWLIB_ICONV_CFLAGS} -D${opt}"
- done
-
-else
- NEWLIB_ICONV_CFLAGS=
-fi;
-AC_SUBST(NEWLIB_ICONV_CFLAGS)
+AM_CONDITIONAL(ENABLE_NEWLIB_ICONV, test x${newlib_iconv} != x)
if test -n "${machine_dir}"; then
if test "${use_libtool}" = "yes"; then
diff --git a/newlib/libc/ctype/Makefile.in b/newlib/libc/ctype/Makefile.in
index ac23435..6f27e61 100644
--- a/newlib/libc/ctype/Makefile.in
+++ b/newlib/libc/ctype/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/errno/Makefile.in b/newlib/libc/errno/Makefile.in
index ea8dd3a..a6514ef 100644
--- a/newlib/libc/errno/Makefile.in
+++ b/newlib/libc/errno/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/iconv/Makefile.in b/newlib/libc/iconv/Makefile.in
index be6703f..8d53d41 100644
--- a/newlib/libc/iconv/Makefile.in
+++ b/newlib/libc/iconv/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/iconv/README.TODO b/newlib/libc/iconv/README.TODO
index 716e1d1..6d2dea9 100644
--- a/newlib/libc/iconv/README.TODO
+++ b/newlib/libc/iconv/README.TODO
@@ -25,17 +25,8 @@
be loaded twice. To save memory, we should load each .cct only once
(if possible).
-5. UTF-16 converter supports only Big Endian UTF-16. BOM (Byte Order Mark)
- isn't supported too. UTF-16BE and UTF-16LE CES support should be added.
- BOM Support should be added. The same is for UCS4 and UCS2 encodings.
-
-6. iconv tests should be written and added to Newlib tests suite.
-
-
Artem B. Bityuckiy,
SoftMine Corporation,
<abitytsky@softminecorp.com>,
<dedekind@mail.ru>,
Jan, 2004.
-
-
diff --git a/newlib/libc/iconv/ccs/Makefile.am b/newlib/libc/iconv/ccs/Makefile.am
index becd45a..2aaddd2 100644
--- a/newlib/libc/iconv/ccs/Makefile.am
+++ b/newlib/libc/iconv/ccs/Makefile.am
@@ -2,7 +2,7 @@
AUTOMAKE_OPTIONS = cygnus
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) $(NEWLIB_ICONV_CFLAGS)
+INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
GENERAL_SOURCES = \
big5.c \
diff --git a/newlib/libc/iconv/ccs/Makefile.in b/newlib/libc/iconv/ccs/Makefile.in
index 1214643..78348d2 100644
--- a/newlib/libc/iconv/ccs/Makefile.in
+++ b/newlib/libc/iconv/ccs/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
@@ -109,7 +108,7 @@ sys_dir = @sys_dir@
AUTOMAKE_OPTIONS = cygnus
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) $(NEWLIB_ICONV_CFLAGS)
+INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
GENERAL_SOURCES = big5.c cp775.c cp850.c cp852.c cp855.c cp866.c gb_2312_80.c iso_8859_15.c iso_8859_1.c iso_8859_2.c iso_8859_4.c iso_8859_5.c jis_x0201.c jis_x0208_1983.c jis_x0212_1990.c koi8_r.c koi8_u.c ksx1001.c shift_jis.c cns11643_plane14.c cns11643_plane1.c cns11643_plane2.c us_ascii.c
diff --git a/newlib/libc/iconv/ccs/README.CCS.SOURCES b/newlib/libc/iconv/ccs/README.CCS.SOURCES
index ee473cc..97a24cd 100644
--- a/newlib/libc/iconv/ccs/README.CCS.SOURCES
+++ b/newlib/libc/iconv/ccs/README.CCS.SOURCES
@@ -1,6 +1,6 @@
This directory contains CCS conversion tables - both C files and .cct files.
.cct files are for dynamic loading, .c files are for static linking with Newlib.
-Both .c and .cct files are generated my 'iconv_mktbl' perl script from
+Both .c and .cct files are generated by 'iconv_mktbl' perl script from
special source files (call them .txt files). These .txt files can be taken
from Unicode.org site, addresses are given in the end.
diff --git a/newlib/libc/iconv/ccs/big5.c b/newlib/libc/iconv/ccs/big5.c
index 7e72e1c..db751c5 100644
--- a/newlib/libc/iconv/ccs/big5.c
+++ b/newlib/libc/iconv/ccs/big5.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_BIG5
+#ifdef _ICONV_CONVERTER_BIG5
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_big5[] = {
+_CONST unsigned char _iconv_ccs_table_big5[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 16, 3,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0xB6, 0x08),
_1l(0x00, 0x00, 0x04, 0x00), _1l(0x00, 0x00, 0x00, 0x00),
@@ -12297,6 +12296,5 @@ _CONST unsigned char iconv_ccs_table_big5[] = {
_2s(0xFF, 0xFE, 0xA2, 0xCE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_BIG5 */
+#endif /* #ifdef _ICONV_CONVERTER_BIG5 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/binary/Makefile.in b/newlib/libc/iconv/ccs/binary/Makefile.in
index 6854835..f8db94a 100644
--- a/newlib/libc/iconv/ccs/binary/Makefile.in
+++ b/newlib/libc/iconv/ccs/binary/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/iconv/ccs/binary/big5.cct b/newlib/libc/iconv/ccs/binary/big5.cct
index e9be588..be6d2e8 100644
--- a/newlib/libc/iconv/ccs/binary/big5.cct
+++ b/newlib/libc/iconv/ccs/binary/big5.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/cns11643_plane1.cct b/newlib/libc/iconv/ccs/binary/cns11643_plane1.cct
index e20ed76..09b0e71 100644
--- a/newlib/libc/iconv/ccs/binary/cns11643_plane1.cct
+++ b/newlib/libc/iconv/ccs/binary/cns11643_plane1.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/cns11643_plane14.cct b/newlib/libc/iconv/ccs/binary/cns11643_plane14.cct
index f891f33..26334b3 100644
--- a/newlib/libc/iconv/ccs/binary/cns11643_plane14.cct
+++ b/newlib/libc/iconv/ccs/binary/cns11643_plane14.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/cns11643_plane2.cct b/newlib/libc/iconv/ccs/binary/cns11643_plane2.cct
index 3a17c06..0523d65 100644
--- a/newlib/libc/iconv/ccs/binary/cns11643_plane2.cct
+++ b/newlib/libc/iconv/ccs/binary/cns11643_plane2.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/cp775.cct b/newlib/libc/iconv/ccs/binary/cp775.cct
index 5a01939..f79e3f0 100644
--- a/newlib/libc/iconv/ccs/binary/cp775.cct
+++ b/newlib/libc/iconv/ccs/binary/cp775.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/cp850.cct b/newlib/libc/iconv/ccs/binary/cp850.cct
index 6f1493c..9b884b6 100644
--- a/newlib/libc/iconv/ccs/binary/cp850.cct
+++ b/newlib/libc/iconv/ccs/binary/cp850.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/cp852.cct b/newlib/libc/iconv/ccs/binary/cp852.cct
index b37009e..f8f25c5 100644
--- a/newlib/libc/iconv/ccs/binary/cp852.cct
+++ b/newlib/libc/iconv/ccs/binary/cp852.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/cp855.cct b/newlib/libc/iconv/ccs/binary/cp855.cct
index 0f3c8d9..869ea9e 100644
--- a/newlib/libc/iconv/ccs/binary/cp855.cct
+++ b/newlib/libc/iconv/ccs/binary/cp855.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/cp866.cct b/newlib/libc/iconv/ccs/binary/cp866.cct
index 9117d97..57d2ac8 100644
--- a/newlib/libc/iconv/ccs/binary/cp866.cct
+++ b/newlib/libc/iconv/ccs/binary/cp866.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/gb_2312_80.cct b/newlib/libc/iconv/ccs/binary/gb_2312_80.cct
index 8f9c436..033b817 100644
--- a/newlib/libc/iconv/ccs/binary/gb_2312_80.cct
+++ b/newlib/libc/iconv/ccs/binary/gb_2312_80.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/iso_8859_1.cct b/newlib/libc/iconv/ccs/binary/iso_8859_1.cct
index 2665284..513f043 100644
--- a/newlib/libc/iconv/ccs/binary/iso_8859_1.cct
+++ b/newlib/libc/iconv/ccs/binary/iso_8859_1.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/iso_8859_15.cct b/newlib/libc/iconv/ccs/binary/iso_8859_15.cct
index 2940843..1fa732c 100644
--- a/newlib/libc/iconv/ccs/binary/iso_8859_15.cct
+++ b/newlib/libc/iconv/ccs/binary/iso_8859_15.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/iso_8859_2.cct b/newlib/libc/iconv/ccs/binary/iso_8859_2.cct
index bb54f34..cd449e9 100644
--- a/newlib/libc/iconv/ccs/binary/iso_8859_2.cct
+++ b/newlib/libc/iconv/ccs/binary/iso_8859_2.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/iso_8859_4.cct b/newlib/libc/iconv/ccs/binary/iso_8859_4.cct
index 67beedd..6b8a379 100644
--- a/newlib/libc/iconv/ccs/binary/iso_8859_4.cct
+++ b/newlib/libc/iconv/ccs/binary/iso_8859_4.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/iso_8859_5.cct b/newlib/libc/iconv/ccs/binary/iso_8859_5.cct
index b3a04f0..187faaa 100644
--- a/newlib/libc/iconv/ccs/binary/iso_8859_5.cct
+++ b/newlib/libc/iconv/ccs/binary/iso_8859_5.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/jis_x0201.cct b/newlib/libc/iconv/ccs/binary/jis_x0201.cct
index e2e2abc..9078048 100644
--- a/newlib/libc/iconv/ccs/binary/jis_x0201.cct
+++ b/newlib/libc/iconv/ccs/binary/jis_x0201.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/jis_x0208_1983.cct b/newlib/libc/iconv/ccs/binary/jis_x0208_1983.cct
index f169773..fbdce45 100644
--- a/newlib/libc/iconv/ccs/binary/jis_x0208_1983.cct
+++ b/newlib/libc/iconv/ccs/binary/jis_x0208_1983.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/jis_x0212_1990.cct b/newlib/libc/iconv/ccs/binary/jis_x0212_1990.cct
index 563143d..e5b389f 100644
--- a/newlib/libc/iconv/ccs/binary/jis_x0212_1990.cct
+++ b/newlib/libc/iconv/ccs/binary/jis_x0212_1990.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/koi8_r.cct b/newlib/libc/iconv/ccs/binary/koi8_r.cct
index 38194d5..82e7950 100644
--- a/newlib/libc/iconv/ccs/binary/koi8_r.cct
+++ b/newlib/libc/iconv/ccs/binary/koi8_r.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/koi8_u.cct b/newlib/libc/iconv/ccs/binary/koi8_u.cct
index 7d38fec..1092efe 100644
--- a/newlib/libc/iconv/ccs/binary/koi8_u.cct
+++ b/newlib/libc/iconv/ccs/binary/koi8_u.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/ksx1001.cct b/newlib/libc/iconv/ccs/binary/ksx1001.cct
index cd97925..afa656c 100644
--- a/newlib/libc/iconv/ccs/binary/ksx1001.cct
+++ b/newlib/libc/iconv/ccs/binary/ksx1001.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/shift_jis.cct b/newlib/libc/iconv/ccs/binary/shift_jis.cct
index de7aaaf..87c1056 100644
--- a/newlib/libc/iconv/ccs/binary/shift_jis.cct
+++ b/newlib/libc/iconv/ccs/binary/shift_jis.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/binary/us_ascii.cct b/newlib/libc/iconv/ccs/binary/us_ascii.cct
index bce5803..d1bc249 100644
--- a/newlib/libc/iconv/ccs/binary/us_ascii.cct
+++ b/newlib/libc/iconv/ccs/binary/us_ascii.cct
Binary files differ
diff --git a/newlib/libc/iconv/ccs/cns11643_plane1.c b/newlib/libc/iconv/ccs/cns11643_plane1.c
index f1acdad..2f38104 100644
--- a/newlib/libc/iconv/ccs/cns11643_plane1.c
+++ b/newlib/libc/iconv/ccs/cns11643_plane1.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_CNS11643_PLANE1
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE1
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_cns11643_plane1[] = {
+_CONST unsigned char _iconv_ccs_table_cns11643_plane1[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 14, 2,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x43, 0x08),
_1l(0x00, 0x00, 0x00, 0x00), _1l(0x00, 0x00, 0x00, 0x00),
@@ -8489,6 +8488,5 @@ _CONST unsigned char iconv_ccs_table_cns11643_plane1[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_CNS11643_PLANE1 */
+#endif /* #ifdef _ICONV_CONVERTER_CNS11643_PLANE1 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/cns11643_plane14.c b/newlib/libc/iconv/ccs/cns11643_plane14.c
index 708dc48..37269f8 100644
--- a/newlib/libc/iconv/ccs/cns11643_plane14.c
+++ b/newlib/libc/iconv/ccs/cns11643_plane14.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_CNS11643_PLANE14
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE14
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_cns11643_plane14[] = {
+_CONST unsigned char _iconv_ccs_table_cns11643_plane14[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 14, 2,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x49, 0x08),
_1l(0x00, 0x00, 0x00, 0x00), _1l(0x00, 0x00, 0x00, 0x00),
@@ -7721,6 +7720,5 @@ _CONST unsigned char iconv_ccs_table_cns11643_plane14[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_CNS11643_PLANE14 */
+#endif /* #ifdef _ICONV_CONVERTER_CNS11643_PLANE14 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/cns11643_plane2.c b/newlib/libc/iconv/ccs/cns11643_plane2.c
index ea7d56a..2baf5df 100644
--- a/newlib/libc/iconv/ccs/cns11643_plane2.c
+++ b/newlib/libc/iconv/ccs/cns11643_plane2.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_CNS11643_PLANE2
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE2
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_cns11643_plane2[] = {
+_CONST unsigned char _iconv_ccs_table_cns11643_plane2[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 14, 2,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x54, 0x08),
_1l(0x00, 0x00, 0x00, 0x00), _1l(0x00, 0x00, 0x00, 0x00),
@@ -8073,6 +8072,5 @@ _CONST unsigned char iconv_ccs_table_cns11643_plane2[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_CNS11643_PLANE2 */
+#endif /* #ifdef _ICONV_CONVERTER_CNS11643_PLANE2 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/cp775.c b/newlib/libc/iconv/ccs/cp775.c
index 764c247..624aea2 100644
--- a/newlib/libc/iconv/ccs/cp775.c
+++ b/newlib/libc/iconv/ccs/cp775.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_CP775
+#ifdef _ICONV_CONVERTER_CP775
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_cp775[] = {
+_CONST unsigned char _iconv_ccs_table_cp775[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -521,6 +520,5 @@ _CONST unsigned char iconv_ccs_table_cp775[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_CP775 */
+#endif /* #ifdef _ICONV_CONVERTER_CP775 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/cp850.c b/newlib/libc/iconv/ccs/cp850.c
index 9b54343..a617b19 100644
--- a/newlib/libc/iconv/ccs/cp850.c
+++ b/newlib/libc/iconv/ccs/cp850.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_CP850
+#ifdef _ICONV_CONVERTER_CP850
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_cp850[] = {
+_CONST unsigned char _iconv_ccs_table_cp850[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -457,6 +456,5 @@ _CONST unsigned char iconv_ccs_table_cp850[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_CP850 */
+#endif /* #ifdef _ICONV_CONVERTER_CP850 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/cp852.c b/newlib/libc/iconv/ccs/cp852.c
index a6e19e7..9b1471d 100644
--- a/newlib/libc/iconv/ccs/cp852.c
+++ b/newlib/libc/iconv/ccs/cp852.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_CP852
+#ifdef _ICONV_CONVERTER_CP852
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_cp852[] = {
+_CONST unsigned char _iconv_ccs_table_cp852[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -457,6 +456,5 @@ _CONST unsigned char iconv_ccs_table_cp852[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_CP852 */
+#endif /* #ifdef _ICONV_CONVERTER_CP852 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/cp855.c b/newlib/libc/iconv/ccs/cp855.c
index 90af33b..52ebf48 100644
--- a/newlib/libc/iconv/ccs/cp855.c
+++ b/newlib/libc/iconv/ccs/cp855.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_CP855
+#ifdef _ICONV_CONVERTER_CP855
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_cp855[] = {
+_CONST unsigned char _iconv_ccs_table_cp855[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -457,6 +456,5 @@ _CONST unsigned char iconv_ccs_table_cp855[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_CP855 */
+#endif /* #ifdef _ICONV_CONVERTER_CP855 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/cp866.c b/newlib/libc/iconv/ccs/cp866.c
index dd6c931..84b4e0d 100644
--- a/newlib/libc/iconv/ccs/cp866.c
+++ b/newlib/libc/iconv/ccs/cp866.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_CP866
+#ifdef _ICONV_CONVERTER_CP866
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_cp866[] = {
+_CONST unsigned char _iconv_ccs_table_cp866[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -521,6 +520,5 @@ _CONST unsigned char iconv_ccs_table_cp866[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_CP866 */
+#endif /* #ifdef _ICONV_CONVERTER_CP866 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/gb_2312_80.c b/newlib/libc/iconv/ccs/gb_2312_80.c
index 04bfd68..7f846cb 100644
--- a/newlib/libc/iconv/ccs/gb_2312_80.c
+++ b/newlib/libc/iconv/ccs/gb_2312_80.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_GB_2312_80
+#ifdef _ICONV_CONVERTER_GB_2312_80
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_gb_2312_80[] = {
+_CONST unsigned char _iconv_ccs_table_gb_2312_80[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 14, 2,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x53, 0x08),
_1l(0x00, 0x00, 0x00, 0x00), _1l(0x00, 0x00, 0x00, 0x00),
@@ -9001,6 +9000,5 @@ _CONST unsigned char iconv_ccs_table_gb_2312_80[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_GB_2312_80 */
+#endif /* #ifdef _ICONV_CONVERTER_GB_2312_80 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/iconv_mktbl b/newlib/libc/iconv/ccs/iconv_mktbl
index 6ecffc6..6c62822 100644
--- a/newlib/libc/iconv/ccs/iconv_mktbl
+++ b/newlib/libc/iconv/ccs/iconv_mktbl
@@ -251,19 +251,19 @@ if ($opt_C) {
$opt_o =~ tr/-/_/;
$name = $opt_o;
$name =~ tr/[a-z]/[A-Z]/;
- print qq/#ifdef ENABLE_ICONV\n/;
- print qq/#include "..\/lib\/deps.h"\n\n/;
- print "#ifdef ICONV_CONVERTER_$name\n";
- print qq/#include "..\/lib\/endian.h"\n\n/;
- print "_CONST unsigned char iconv_ccs_table_$opt_o" . "[] = {\n";
+ print "#include \"..\/lib\/deps.h\"\n\n";
+ print "#ifdef _ICONV_CONVERTER_$name\n";
+ print "#include \"..\/lib\/endian.h\"\n\n";
+ print "_CONST unsigned char _iconv_ccs_table_$opt_o" . "[] = {\n";
print "\t3, 'C', 'S', 'C', 'T', ICONV_ORDER, $nbits, $type,\n";
print &pack_array(2, 'N', [8, 8 + $to_size]);
+ print $to;
+ print $from;
+ print "};\n\n";
+ print "#endif /* #ifdef _ICONV_CONVERTER_$name */\n\n";
} else {
print pack("A5CCCNN", "\003CSCT", 0, $nbits, $type, 8, 8 + $to_size);
+ print $to;
+ print $from;
}
-print $to;
-print $from;
-print "};\n\n";
-print "#endif /* #ifdef ICONV_CONVERTER_$name */\n\n";
-print "#endif /* #ifdef ENABLE_ICONV */\n" if $opt_C;
diff --git a/newlib/libc/iconv/ccs/iso_8859_1.c b/newlib/libc/iconv/ccs/iso_8859_1.c
index 3b78dd4..eb07ead 100644
--- a/newlib/libc/iconv/ccs/iso_8859_1.c
+++ b/newlib/libc/iconv/ccs/iso_8859_1.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_ISO_8859_1
+#ifdef _ICONV_CONVERTER_ISO_8859_1
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_iso_8859_1[] = {
+_CONST unsigned char _iconv_ccs_table_iso_8859_1[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -265,6 +264,5 @@ _CONST unsigned char iconv_ccs_table_iso_8859_1[] = {
_2s(0x00, 0xFC, 0x00, 0xFD), _2s(0x00, 0xFE, 0x00, 0xFF),
};
-#endif /* #ifdef ICONV_CONVERTER_ISO_8859_1 */
+#endif /* #ifdef _ICONV_CONVERTER_ISO_8859_1 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/iso_8859_15.c b/newlib/libc/iconv/ccs/iso_8859_15.c
index f4f2214..ef3babc 100644
--- a/newlib/libc/iconv/ccs/iso_8859_15.c
+++ b/newlib/libc/iconv/ccs/iso_8859_15.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_ISO_8859_15
+#ifdef _ICONV_CONVERTER_ISO_8859_15
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_iso_8859_15[] = {
+_CONST unsigned char _iconv_ccs_table_iso_8859_15[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -393,6 +392,5 @@ _CONST unsigned char iconv_ccs_table_iso_8859_15[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_ISO_8859_15 */
+#endif /* #ifdef _ICONV_CONVERTER_ISO_8859_15 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/iso_8859_2.c b/newlib/libc/iconv/ccs/iso_8859_2.c
index 8f19107..1a617e8 100644
--- a/newlib/libc/iconv/ccs/iso_8859_2.c
+++ b/newlib/libc/iconv/ccs/iso_8859_2.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_ISO_8859_2
+#ifdef _ICONV_CONVERTER_ISO_8859_2
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_iso_8859_2[] = {
+_CONST unsigned char _iconv_ccs_table_iso_8859_2[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -393,6 +392,5 @@ _CONST unsigned char iconv_ccs_table_iso_8859_2[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_ISO_8859_2 */
+#endif /* #ifdef _ICONV_CONVERTER_ISO_8859_2 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/iso_8859_4.c b/newlib/libc/iconv/ccs/iso_8859_4.c
index 04fab21..2b56dd2 100644
--- a/newlib/libc/iconv/ccs/iso_8859_4.c
+++ b/newlib/libc/iconv/ccs/iso_8859_4.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_ISO_8859_4
+#ifdef _ICONV_CONVERTER_ISO_8859_4
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_iso_8859_4[] = {
+_CONST unsigned char _iconv_ccs_table_iso_8859_4[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -393,6 +392,5 @@ _CONST unsigned char iconv_ccs_table_iso_8859_4[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_ISO_8859_4 */
+#endif /* #ifdef _ICONV_CONVERTER_ISO_8859_4 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/iso_8859_5.c b/newlib/libc/iconv/ccs/iso_8859_5.c
index cfc732d..38ea5bd 100644
--- a/newlib/libc/iconv/ccs/iso_8859_5.c
+++ b/newlib/libc/iconv/ccs/iso_8859_5.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_ISO_8859_5
+#ifdef _ICONV_CONVERTER_ISO_8859_5
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_iso_8859_5[] = {
+_CONST unsigned char _iconv_ccs_table_iso_8859_5[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -393,6 +392,5 @@ _CONST unsigned char iconv_ccs_table_iso_8859_5[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_ISO_8859_5 */
+#endif /* #ifdef _ICONV_CONVERTER_ISO_8859_5 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/jis_x0201.c b/newlib/libc/iconv/ccs/jis_x0201.c
index f284347..21a638a 100644
--- a/newlib/libc/iconv/ccs/jis_x0201.c
+++ b/newlib/libc/iconv/ccs/jis_x0201.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_JIS_X0201
+#ifdef _ICONV_CONVERTER_JIS_X0201
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_jis_x0201[] = {
+_CONST unsigned char _iconv_ccs_table_jis_x0201[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -393,6 +392,5 @@ _CONST unsigned char iconv_ccs_table_jis_x0201[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_JIS_X0201 */
+#endif /* #ifdef _ICONV_CONVERTER_JIS_X0201 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/jis_x0208_1983.c b/newlib/libc/iconv/ccs/jis_x0208_1983.c
index 306359e..9f638ec 100644
--- a/newlib/libc/iconv/ccs/jis_x0208_1983.c
+++ b/newlib/libc/iconv/ccs/jis_x0208_1983.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_JIS_X0208_1983
+#ifdef _ICONV_CONVERTER_JIS_X0208_1983
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_jis_x0208_1983[] = {
+_CONST unsigned char _iconv_ccs_table_jis_x0208_1983[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 14, 2,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x4F, 0x08),
_1l(0x00, 0x00, 0x00, 0x00), _1l(0x00, 0x00, 0x00, 0x00),
@@ -8617,6 +8616,5 @@ _CONST unsigned char iconv_ccs_table_jis_x0208_1983[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_JIS_X0208_1983 */
+#endif /* #ifdef _ICONV_CONVERTER_JIS_X0208_1983 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/jis_x0212_1990.c b/newlib/libc/iconv/ccs/jis_x0212_1990.c
index d01bba6..c3a5614 100644
--- a/newlib/libc/iconv/ccs/jis_x0212_1990.c
+++ b/newlib/libc/iconv/ccs/jis_x0212_1990.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_JIS_X0212_1990
+#ifdef _ICONV_CONVERTER_JIS_X0212_1990
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_jis_x0212_1990[] = {
+_CONST unsigned char _iconv_ccs_table_jis_x0212_1990[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 14, 2,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x46, 0x08),
_1l(0x00, 0x00, 0x00, 0x00), _1l(0x00, 0x00, 0x00, 0x00),
@@ -8009,6 +8008,5 @@ _CONST unsigned char iconv_ccs_table_jis_x0212_1990[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_JIS_X0212_1990 */
+#endif /* #ifdef _ICONV_CONVERTER_JIS_X0212_1990 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/koi8_r.c b/newlib/libc/iconv/ccs/koi8_r.c
index 66c5f94..ba0340d 100644
--- a/newlib/libc/iconv/ccs/koi8_r.c
+++ b/newlib/libc/iconv/ccs/koi8_r.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_KOI8_R
+#ifdef _ICONV_CONVERTER_KOI8_R
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_koi8_r[] = {
+_CONST unsigned char _iconv_ccs_table_koi8_r[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -521,6 +520,5 @@ _CONST unsigned char iconv_ccs_table_koi8_r[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_KOI8_R */
+#endif /* #ifdef _ICONV_CONVERTER_KOI8_R */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/koi8_u.c b/newlib/libc/iconv/ccs/koi8_u.c
index 8fe8a2d..c82d128 100644
--- a/newlib/libc/iconv/ccs/koi8_u.c
+++ b/newlib/libc/iconv/ccs/koi8_u.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_KOI8_U
+#ifdef _ICONV_CONVERTER_KOI8_U
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_koi8_u[] = {
+_CONST unsigned char _iconv_ccs_table_koi8_u[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 8, 1,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x02, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -521,6 +520,5 @@ _CONST unsigned char iconv_ccs_table_koi8_u[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_KOI8_U */
+#endif /* #ifdef _ICONV_CONVERTER_KOI8_U */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/ksx1001.c b/newlib/libc/iconv/ccs/ksx1001.c
index a95ca91..4f325d7 100644
--- a/newlib/libc/iconv/ccs/ksx1001.c
+++ b/newlib/libc/iconv/ccs/ksx1001.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_KSX1001
+#ifdef _ICONV_CONVERTER_KSX1001
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_ksx1001[] = {
+_CONST unsigned char _iconv_ccs_table_ksx1001[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 14, 2,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x5B, 0x08),
_1l(0x00, 0x00, 0x00, 0x00), _1l(0x00, 0x00, 0x00, 0x00),
@@ -12329,6 +12328,5 @@ _CONST unsigned char iconv_ccs_table_ksx1001[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_KSX1001 */
+#endif /* #ifdef _ICONV_CONVERTER_KSX1001 */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/shift_jis.c b/newlib/libc/iconv/ccs/shift_jis.c
index 9d87b5f..e8dcb60 100644
--- a/newlib/libc/iconv/ccs/shift_jis.c
+++ b/newlib/libc/iconv/ccs/shift_jis.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_SHIFT_JIS
+#ifdef _ICONV_CONVERTER_SHIFT_JIS
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_shift_jis[] = {
+_CONST unsigned char _iconv_ccs_table_shift_jis[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 16, 3,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x54, 0x08),
_1l(0x00, 0x00, 0x04, 0x00), _1l(0x00, 0x00, 0x00, 0x00),
@@ -8777,6 +8776,5 @@ _CONST unsigned char iconv_ccs_table_shift_jis[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_SHIFT_JIS */
+#endif /* #ifdef _ICONV_CONVERTER_SHIFT_JIS */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ccs/us_ascii.c b/newlib/libc/iconv/ccs/us_ascii.c
index 8622f78..d89f050 100644
--- a/newlib/libc/iconv/ccs/us_ascii.c
+++ b/newlib/libc/iconv/ccs/us_ascii.c
@@ -1,10 +1,9 @@
-#ifdef ENABLE_ICONV
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_US_ASCII
+#ifdef _ICONV_CONVERTER_US_ASCII
#include "../lib/endian.h"
-_CONST unsigned char iconv_ccs_table_us_ascii[] = {
+_CONST unsigned char _iconv_ccs_table_us_ascii[] = {
3, 'C', 'S', 'C', 'T', ICONV_ORDER, 7, 0,
_1l(0x00, 0x00, 0x00, 0x08), _1l(0x00, 0x00, 0x01, 0x08),
_2s(0x00, 0x00, 0x00, 0x01), _2s(0x00, 0x02, 0x00, 0x03),
@@ -233,6 +232,5 @@ _CONST unsigned char iconv_ccs_table_us_ascii[] = {
_2s(0xFF, 0xFE, 0xFF, 0xFE), _2s(0xFF, 0xFE, 0xFF, 0xFE),
};
-#endif /* #ifdef ICONV_CONVERTER_US_ASCII */
+#endif /* #ifdef _ICONV_CONVERTER_US_ASCII */
-#endif /* #ifdef ENABLE_ICONV */
diff --git a/newlib/libc/iconv/ces/Makefile.am b/newlib/libc/iconv/ces/Makefile.am
index 8f49f3c..d7fab99 100644
--- a/newlib/libc/iconv/ces/Makefile.am
+++ b/newlib/libc/iconv/ces/Makefile.am
@@ -2,7 +2,7 @@
AUTOMAKE_OPTIONS = cygnus
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) $(NEWLIB_ICONV_CFLAGS)
+INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
GENERAL_SOURCES = euc-jp.c \
euc-kr.c \
diff --git a/newlib/libc/iconv/ces/Makefile.in b/newlib/libc/iconv/ces/Makefile.in
index 7dacc2b..e351cb1 100644
--- a/newlib/libc/iconv/ces/Makefile.in
+++ b/newlib/libc/iconv/ces/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
@@ -109,7 +108,7 @@ sys_dir = @sys_dir@
AUTOMAKE_OPTIONS = cygnus
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) $(NEWLIB_ICONV_CFLAGS)
+INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
GENERAL_SOURCES = euc-jp.c euc-kr.c euc-tw.c gb2312.c iso-10646-ucs-2.c iso-10646-ucs-4.c ucs-2-internal.c ucs-4-internal.c utf-16.c utf-8.c
diff --git a/newlib/libc/iconv/ces/euc-jp.c b/newlib/libc/iconv/ces/euc-jp.c
index 3855686..17f36c7 100644
--- a/newlib/libc/iconv/ces/euc-jp.c
+++ b/newlib/libc/iconv/ces/euc-jp.c
@@ -25,15 +25,12 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_EUC_JP
-
+#ifdef _ICONV_CONVERTER_EUC_JP
#include "../lib/local.h"
-static _CONST iconv_ces_euc_ccs ccsattr[] = {
+static _CONST iconv_ces_euc_ccs_t ccsattr[] = {
{"us_ascii", "", 0},
{"jis_x0208_1983", "", 0},
{"jis_x0201", "\x8e", 1},
@@ -42,7 +39,5 @@ static _CONST iconv_ces_euc_ccs ccsattr[] = {
ICONV_CES_MODULE_DECL(euc, euc_jp);
-#endif /* #ifdef ICONV_CONVERTER_EUC_JP */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifdef _ICONV_CONVERTER_EUC_JP */
diff --git a/newlib/libc/iconv/ces/euc-kr.c b/newlib/libc/iconv/ces/euc-kr.c
index 015e8d8..b4488bd 100644
--- a/newlib/libc/iconv/ces/euc-kr.c
+++ b/newlib/libc/iconv/ces/euc-kr.c
@@ -25,22 +25,17 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_EUC_KR
-
+#ifdef _ICONV_CONVERTER_EUC_KR
#include "../lib/local.h"
-static _CONST iconv_ces_euc_ccs ccsattr[] = {
+static _CONST iconv_ces_euc_ccs_t ccsattr[] = {
{"us_ascii", "", 0},
{"ksx1001", "", 0}
};
ICONV_CES_MODULE_DECL(euc, euc_kr);
-#endif /* #ifdef ICONV_CONVERTER_EUC_KR */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifdef _ICONV_CONVERTER_EUC_KR */
diff --git a/newlib/libc/iconv/ces/euc-tw.c b/newlib/libc/iconv/ces/euc-tw.c
index 03d518d..9858cbb 100644
--- a/newlib/libc/iconv/ces/euc-tw.c
+++ b/newlib/libc/iconv/ces/euc-tw.c
@@ -25,15 +25,12 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_EUC_TW
-
+#ifdef _ICONV_CONVERTER_EUC_TW
#include "../lib/local.h"
-static _CONST iconv_ces_euc_ccs ccsattr[] = {
+static _CONST iconv_ces_euc_ccs_t ccsattr[] = {
{"us_ascii", "", 0},
{"cns11643_plane1", "", 0},
{"cns11643_plane2", "\x8e\xa2", 2},
@@ -42,7 +39,5 @@ static _CONST iconv_ces_euc_ccs ccsattr[] = {
ICONV_CES_MODULE_DECL(euc, euc_tw);
-#endif /* #ifdef ICONV_CONVERTER_EUC_KR */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifdef _ICONV_CONVERTER_EUC_KR */
diff --git a/newlib/libc/iconv/ces/gb2312.c b/newlib/libc/iconv/ces/gb2312.c
index 8da8de6..3fd9432 100644
--- a/newlib/libc/iconv/ces/gb2312.c
+++ b/newlib/libc/iconv/ces/gb2312.c
@@ -25,22 +25,17 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_GB2312
-
+#ifdef _ICONV_CONVERTER_GB2312
#include "../lib/local.h"
-static _CONST iconv_ces_euc_ccs ccsattr[] = {
+static _CONST iconv_ces_euc_ccs_t ccsattr[] = {
{"us_ascii", "", 0},
{"gb_2312_80", "", 0}
};
ICONV_CES_MODULE_DECL(euc, gb2312);
-#endif /* #ifdef ICONV_CONVERTER_GB2312 */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifdef _ICONV_CONVERTER_GB2312 */
diff --git a/newlib/libc/iconv/ces/iso-10646-ucs-2.c b/newlib/libc/iconv/ces/iso-10646-ucs-2.c
index 0306638..7ce9fda 100644
--- a/newlib/libc/iconv/ces/iso-10646-ucs-2.c
+++ b/newlib/libc/iconv/ces/iso-10646-ucs-2.c
@@ -25,13 +25,9 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_ISO_10646_UCS_2
-
-#include <_ansi.h>
+#ifdef _ICONV_CONVERTER_ISO_10646_UCS_2
#include "../lib/local.h"
#define out_char(ptr, ch) \
@@ -114,7 +110,5 @@ _DEFUN(convert_to_ucs, (ces, inbuf, inbytesleft),
ICONV_CES_STATEFUL_MODULE_DECL(iso_10646_ucs_2);
-#endif /* #ifdef ICONV_CONVERTER_ISO_10646_UCS_2 */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifdef _ICONV_CONVERTER_ISO_10646_UCS_2 */
diff --git a/newlib/libc/iconv/ces/iso-10646-ucs-4.c b/newlib/libc/iconv/ces/iso-10646-ucs-4.c
index 0e4d83c..ea98818 100644
--- a/newlib/libc/iconv/ces/iso-10646-ucs-4.c
+++ b/newlib/libc/iconv/ces/iso-10646-ucs-4.c
@@ -25,13 +25,9 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_ISO_10646_UCS_4
-
-#include <_ansi.h>
+#ifdef _ICONV_CONVERTER_ISO_10646_UCS_4
#include "../lib/local.h"
#define out_char(ptr, ch) \
@@ -117,7 +113,5 @@ _DEFUN(convert_to_ucs, (ces, inbuf, inbytesleft),
ICONV_CES_STATEFUL_MODULE_DECL(iso_10646_ucs_4);
-#endif /* #ifdef ICONV_CONVERTER_ISO_10646_UCS_4 */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifdef _ICONV_CONVERTER_ISO_10646_UCS_4 */
diff --git a/newlib/libc/iconv/ces/ucs-2-internal.c b/newlib/libc/iconv/ces/ucs-2-internal.c
index 4b359f9..c7a6767 100644
--- a/newlib/libc/iconv/ces/ucs-2-internal.c
+++ b/newlib/libc/iconv/ces/ucs-2-internal.c
@@ -25,13 +25,9 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_UCS_2_INTERNAL
-
-#include <_ansi.h>
+#ifdef _ICONV_CONVERTER_UCS_2_INTERNAL
#include "../lib/local.h"
static ssize_t
@@ -66,7 +62,5 @@ _DEFUN(convert_to_ucs, (ces, inbuf, inbytesleft),
ICONV_CES_STATELESS_MODULE_DECL(ucs_2_internal);
-#endif /* #ifdef ICONV_CONVERTER_UCS_2_INTERNAL */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifdef _ICONV_CONVERTER_UCS_2_INTERNAL */
diff --git a/newlib/libc/iconv/ces/ucs-4-internal.c b/newlib/libc/iconv/ces/ucs-4-internal.c
index c8fef00..0d4ba9c 100644
--- a/newlib/libc/iconv/ces/ucs-4-internal.c
+++ b/newlib/libc/iconv/ces/ucs-4-internal.c
@@ -25,13 +25,9 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_UCS_4_INTERNAL
-
-#include <_ansi.h>
+#ifdef _ICONV_CONVERTER_UCS_4_INTERNAL
#include "../lib/local.h"
static ssize_t
@@ -64,7 +60,5 @@ _DEFUN(convert_to_ucs, (ces, inbuf, inbytesleft),
ICONV_CES_STATELESS_MODULE_DECL(ucs_4_internal);
-#endif /* #ifdef ICONV_CONVERTER_UCS_4_INTERNAL */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifdef _ICONV_CONVERTER_UCS_4_INTERNAL */
diff --git a/newlib/libc/iconv/ces/utf-16.c b/newlib/libc/iconv/ces/utf-16.c
index a12c979..fae4ed5 100644
--- a/newlib/libc/iconv/ces/utf-16.c
+++ b/newlib/libc/iconv/ces/utf-16.c
@@ -25,13 +25,9 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_UTF_16
-
-#include <_ansi.h>
+#ifdef _ICONV_CONVERTER_UTF_16
#include <string.h>
#include "../lib/local.h"
@@ -138,7 +134,5 @@ _DEFUN(convert_to_ucs, (ces, inbuf, inbytesleft),
ICONV_CES_STATEFUL_MODULE_DECL(utf_16);
-#endif /* #ifdef ICONV_CONVERTER_UTF_16 */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifdef _ICONV_CONVERTER_UTF_16 */
diff --git a/newlib/libc/iconv/ces/utf-8.c b/newlib/libc/iconv/ces/utf-8.c
index c11ce61..157afc0 100644
--- a/newlib/libc/iconv/ces/utf-8.c
+++ b/newlib/libc/iconv/ces/utf-8.c
@@ -25,13 +25,9 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "../lib/deps.h"
-#ifdef ICONV_CONVERTER_UTF_8
-
-#include <_ansi.h>
+#ifdef _ICONV_CONVERTER_UTF_8
#include "../lib/local.h"
#define cont_byte(b) (((b) & 0x3F) | 0x80)
@@ -187,7 +183,5 @@ _DEFUN(convert_to_ucs, (ces, inbuf, inbytesleft),
ICONV_CES_STATELESS_MODULE_DECL(utf_8);
-#endif /* #ifdef ICONV_CONVERTER_UTF_8 */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifdef _ICONV_CONVERTER_UTF_8 */
diff --git a/newlib/libc/iconv/charset.aliases b/newlib/libc/iconv/charset.aliases
index cc92a16..6d1b619 100644
--- a/newlib/libc/iconv/charset.aliases
+++ b/newlib/libc/iconv/charset.aliases
@@ -21,7 +21,7 @@ cp852 ibm852 852 cspcp852
cp850 ibm850 850 cspc850multilingual
cp775 ibm775 cspc775baltic
koi8_u koi8u
-koi8_r cskoi8r koi8r
+koi8_r cskoi8r koi8r koi8
iso_8859_1 iso8859_1 iso88591 iso_8859_1:1987 iso_ir_100 latin1 l1 ibm819 cp819 csisolatin1
iso_8859_2 iso8859_2 iso88592 iso_8859_2:1987 iso_ir_101 latin2 l2 csisolatin2
iso_8859_4 iso8859_4 iso88594 iso_8859_4:1988 iso_ir_110 latin4 l4 csisolatin4
@@ -30,9 +30,9 @@ iso_8859_15 iso8859_15 iso885915 iso_8859_15:1998 iso8859_15 iso885915
euc_jp eucjp
euc_kr euckr
euc_tw euctw
-iso_10646_ucs_2 iso10646_ucs_2 iso_10646_ucs2 iso10646_ucs2 iso1064ucs2 ucs2 ucs_2 ucs2be ucs2_be ucs_2be ucs_2_be
-iso_10646_ucs_4 iso10646_ucs_4 iso_10646_ucs4 iso10646_ucs4 iso1064ucs4 ucs4 ucs_4 ucs4be ucs4_be ucs_4be ucs_4_be
+iso_10646_ucs_2 iso10646_ucs_2 iso_10646_ucs2 iso10646_ucs2 iso1064ucs2 ucs2 ucs_2
+iso_10646_ucs_4 iso10646_ucs_4 iso_10646_ucs4 iso10646_ucs4 iso1064ucs4 ucs4 ucs_4
ucs_2_internal ucs2_internal ucs2internal
ucs_4_internal ucs4_internal ucs4internal
-utf_16 utf16 utf_16be utf16be utf_16_be
+utf_16 utf16
utf_8 utf8
diff --git a/newlib/libc/iconv/lib/Makefile.am b/newlib/libc/iconv/lib/Makefile.am
index bd6c3bf..9754d6d 100644
--- a/newlib/libc/iconv/lib/Makefile.am
+++ b/newlib/libc/iconv/lib/Makefile.am
@@ -2,7 +2,7 @@
AUTOMAKE_OPTIONS = cygnus
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) $(NEWLIB_ICONV_CFLAGS)
+INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
GENERAL_SOURCES = \
aliases.c \
diff --git a/newlib/libc/iconv/lib/Makefile.in b/newlib/libc/iconv/lib/Makefile.in
index f8cd174..a3c568d 100644
--- a/newlib/libc/iconv/lib/Makefile.in
+++ b/newlib/libc/iconv/lib/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
@@ -109,7 +108,7 @@ sys_dir = @sys_dir@
AUTOMAKE_OPTIONS = cygnus
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) $(NEWLIB_ICONV_CFLAGS)
+INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
GENERAL_SOURCES = aliases.c ces.c ces_iso2022.c converter.c ccs.c ces_euc.c ces_table.c iconv.c loaddata.c bialiasesi.c biccs.c bices.c
diff --git a/newlib/libc/iconv/lib/aliases.c b/newlib/libc/iconv/lib/aliases.c
index 5ef2a6c..204b907 100644
--- a/newlib/libc/iconv/lib/aliases.c
+++ b/newlib/libc/iconv/lib/aliases.c
@@ -23,9 +23,6 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
-#if defined(ENABLE_ICONV)
-
-#include <_ansi.h>
#include <string.h>
#include <stdlib.h>
#include <reent.h>
@@ -37,7 +34,7 @@
* PARAMETERS:
* _CONST char *haystack - the string in which to search.
* _CONST char *needle - the string which to search.
- * int length - the maximum 'searchee' string length.
+ * int length - the maximum 'haystack' string length.
*
* DESCRIPTION:
* The strstr() function finds the first occurrence of the substring
@@ -45,7 +42,7 @@
*
* RETURN:
* Returns a pointer to the beginning of the substring, or NULL if the
- * substring is not found.
+ * substring was not found.
*/
static char *
_DEFUN(strnstr, (haystack, needle, length),
@@ -82,7 +79,7 @@ _DEFUN(strnstr, (haystack, needle, length),
* _CONST char *str - string to canonize.
*
* DESCRIPTION:
- * Convert all letters to small and substitute all '-' by '_'.
+ * Converts all letters to small and substitute all '-' by '_'.
*
* RETURN:
* Returns canonical form of 'str' if success, NULL if failure.
@@ -113,12 +110,12 @@ _DEFUN(canonical_form, (rptr, str),
*
* PARAMETERS:
* struct _reent *rptr - reent structure of curent thread/process.
- * _CONST char *alias - alias by which "official" name should be found.
- * char *table - alias table.
- * int len - alias table length.
+ * _CONST char *alias - alias by which "official" name should be found.
+ * _CONST char *table - aliases table.
+ * int len - aliases table length.
*
* DESCRIPTION:
- * 'table' contains the list of that names and their aliases. "Official"
+ * 'table' contains the list of names and their aliases. "Official"
* names go first, e.g.:
*
* Official_name1 alias11 alias12 alias1N
@@ -129,7 +126,7 @@ _DEFUN(canonical_form, (rptr, str),
* previous line.
*
* RETURN:
- * Returns pointer to name "official" if success, NULL if failure.
+ * Returns pointer to "official" name if success, NULL if failure.
*/
static _CONST char *
_DEFUN(find_alias, (rptr, alias, table, len),
@@ -175,7 +172,7 @@ search_again:
}
/*
- * _iconv_construct_filename -- constructs file name string from it's
+ * _iconv_construct_filename -- constructs full file name from it's
* path and name
*
* PARAMETERS:
@@ -188,7 +185,7 @@ search_again:
* 'path' and 'name' shouldn't be NULL.
*
* RETURN:
- * The pointer to file path if success, NULL else.
+ * The pointer to full file name if success, NULL if faulture.
*/
char *
_DEFUN(_iconv_construct_filename, (rptr, path, file),
@@ -218,19 +215,19 @@ _DEFUN(_iconv_construct_filename, (rptr, path, file),
}
/*
- * _iconv_resolve_alias - resolves charset's name by given alias.
+ * _iconv_resolve_alias - resolves "official" name by given alias.
*
* PARAMETERS:
- * struct _reent *rptr - reent structure of curent thread/process.
+ * struct _reent *rptr - reent structure of curent thread/process.
* _CONST char *alias - alias to resolve.
- * _CONST char *bialiases - built-in aliases table.
+ * _CONST char *bialiases - aliases table.
* int cf - canonize flag.
- * _CONST char *fname - external file with aliases list.
+ * _CONST char *fname - name of external file with list uf aliases.
*
* DESCRIPTION:
- * Tries to find 'alias' in built-in aliases list ('bialiases'). If not
+ * Tries to find 'alias' in aliases list ('bialiases'). If not
* found, searches at 'fname' file. 'cf' flag shows if 'alias' should be
- * canonized before searching. Both 'bialiases' and 'fname' can be NULL
+ * canonized before searching. Both 'bialiases' and 'fname' can't be NULL
* pointers.
*
* RETURN:
@@ -275,12 +272,12 @@ free_and_return:
}
/*
- * _iconv_resolve_cs_name - resolves charset by given alias.
+ * _iconv_resolve_cs_name - resolves convrter's "official" name by given alias.
*
* PARAMETERS:
- * struct _reent *rptr - reent structure of curent thread/process.
- * _CONST char *cs - charset alias to resolve.
- * _CONST char *path - external file with aliases list.
+ * struct _reent *rptr - reent structure of curent thread/process.
+ * _CONST char *cs - charset alias to resolve.
+ * _CONST char *path - external file with aliases list.
*
* DESCRIPTION:
* First, tries to find 'cs' among built-in aliases. If not fount, tries to
@@ -304,12 +301,10 @@ _DEFUN(_iconv_resolve_cs_name, (rptr, cs, path),
if (fname == NULL)
return NULL;
- p = (char *)_iconv_resolve_alias(rptr, cs, iconv_builtin_aliases,
+ p = (char *)_iconv_resolve_alias(rptr, cs, _iconv_builtin_aliases,
1, (_CONST char *)fname);
if (fname != NULL)
_free_r(rptr, (_VOID_PTR)fname);
return p;
}
-#endif /* #if defined(ENABLE_ICONV) */
-
diff --git a/newlib/libc/iconv/lib/bialiasesi.c b/newlib/libc/iconv/lib/bialiasesi.c
index 39371b4..b703b9a 100644
--- a/newlib/libc/iconv/lib/bialiasesi.c
+++ b/newlib/libc/iconv/lib/bialiasesi.c
@@ -23,117 +23,113 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
-#ifdef ENABLE_ICONV
-
#include <_ansi.h>
#include "deps.h"
/*
- * Built-in charset aliases table. The main name starts at the first position
- * of a line, followed by zero or more aliases, separated by any whitespace
- * character(s). Alias list may continue on the next line if the latter
- * begins with a whitespace.
+ * Built-in charset aliases table. The "official" name starts at the first
+ * position of a line, followed by zero or more aliases, separated by any
+ * whitespace character(s). Aliases list may continue on the next line if this
+ * line begins with a whitespace.
*/
-_CONST char iconv_builtin_aliases[] =
+_CONST char _iconv_builtin_aliases[] =
{
-#ifdef ICONV_CONVERTER_US_ASCII
+#ifdef _ICONV_CONVERTER_US_ASCII
"us_ascii ansi_x3.4_1968 ansi_x3.4_1986 iso_646.irv:1991 ascii iso646_us us ibm367 cp367 csascii\n"
#endif
-#ifdef ICONV_CONVERTER_BIG5
+#ifdef _ICONV_CONVERTER_BIG5
"big5 csbig5 big_five bigfive cn_big5 cp950\n"
#endif
-#ifdef ICONV_CONVERTER_CNS11643_PLANE1
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE1
"cns11643_plane1\n"
#endif
-#ifdef ICONV_CONVERTER_CNS11643_PLANE2
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE2
"cns11643_plane2\n"
#endif
-#ifdef ICONV_CONVERTER_CNS11643_PLANE14
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE14
"cns11643_plane14\n"
#endif
-#ifdef ICONV_CONVERTER_SHIFT_JIS
+#ifdef _ICONV_CONVERTER_SHIFT_JIS
"shift_jis sjis cp932 ms_kanji csshiftjis\n"
#endif
-#ifdef ICONV_CONVERTER_KSX_1001
+#ifdef _ICONV_CONVERTER_KSX_1001
"ksx1001 ks_x_1001\n"
#endif
-#ifdef ICONV_CONVERTER_JIS_X0212_1990
+#ifdef _ICONV_CONVERTER_JIS_X0212_1990
"jis_x0212_1990\n"
#endif
-#ifdef ICONV_CONVERTER_JIS_X0208_1983
+#ifdef _ICONV_CONVERTER_JIS_X0208_1983
"jis_x0208_1983 jis_c6226-1983 iso_ir_87 x0208\n"
#endif
-#ifdef ICONV_CONVERTER_JIS_X0201
+#ifdef _ICONV_CONVERTER_JIS_X0201
"jis_x0201 x0201 cshalfwidthkatakana\n"
#endif
-#ifdef ICONV_CONVERTER_GB_2312_80
+#ifdef _ICONV_CONVERTER_GB_2312_80
"gb_2312_80 gb2312 gb2312_80 euc_cn eucch cn_gb csgb2312 iso_ir_58 chinese\n"
#endif
-#ifdef ICONV_CONVERTER_CP866
+#ifdef _ICONV_CONVERTER_CP866
"cp866 866 IBM866 CSIBM866\n"
#endif
-#ifdef ICONV_CONVERTER_CP855
+#ifdef _ICONV_CONVERTER_CP855
"cp855 ibm855 855 csibm855\n"
#endif
-#ifdef ICONV_CONVERTER_CP852
+#ifdef _ICONV_CONVERTER_CP852
"cp852 ibm852 852 cspcp852\n"
#endif
-#ifdef ICONV_CONVERTER_CP850
+#ifdef _ICONV_CONVERTER_CP850
"cp850 ibm850 850 cspc850multilingual\n"
#endif
-#ifdef ICONV_CONVERTER_CP775
+#ifdef _ICONV_CONVERTER_CP775
"cp775 ibm775 cspc775baltic\n"
#endif
-#ifdef ICONV_CONVERTER_KOI8_U
+#ifdef _ICONV_CONVERTER_KOI8_U
"koi8_u koi8u\n"
#endif
-#ifdef ICONV_CONVERTER_KOI8_R
+#ifdef _ICONV_CONVERTER_KOI8_R
"koi8_r cskoi8r koi8r koi8\n"
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_1
-"iso_8859_1 iso_88591 iso_8859_1:1987 iso_ir_100 latin1 l1 ibm819 cp819 csisolatin1\n"
+#ifdef _ICONV_CONVERTER_ISO_8859_1
+"iso_8859_1 iso_8859_1 iso_88591:1987 iso_ir_100 latin1 l1 ibm819 cp819 csisolatin1\n"
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_2
-"iso_8859_2 iso_88592 iso_8859_2:1987 iso_ir_101 latin2 l2 csisolatin2\n"
+#ifdef _ICONV_CONVERTER_ISO_8859_2
+"iso_8859_2 iso8859_2 iso_88592 iso_8859_2:1987 iso_ir_101 latin2 l2 csisolatin2\n"
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_4
-"iso_8859_4 iso_88594 iso_8859_4:1988 iso_ir_110 latin4 l4 csisolatin4\n"
+#ifdef _ICONV_CONVERTER_ISO_8859_4
+"iso_8859_4 iso8859_4 iso_88594 iso_8859_4:1988 iso_ir_110 latin4 l4 csisolatin4\n"
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_5
-"iso_8859_5 iso_88595 iso_8859_5:1988 iso_ir_144 cyrillic csisolatincyrillic\n"
+#ifdef _ICONV_CONVERTER_ISO_8859_5
+"iso_8859_5 iso8859_5 iso_88595 iso_8859_5:1988 iso_ir_144 cyrillic csisolatincyrillic\n"
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_15
-"iso_8859_15 iso_885915 iso_8859_15:1998 iso8859_15 iso885915\n"
+#ifdef _ICONV_CONVERTER_ISO_8859_15
+"iso_8859_15 iso8859_15 iso_885915 iso_8859_15:1998 iso8859_15 iso885915\n"
#endif
-#ifdef ICONV_CONVERTER_EUC_JP
+#ifdef _ICONV_CONVERTER_EUC_JP
"euc_jp eucjp\n"
#endif
-#ifdef ICONV_CONVERTER_EUC_KR
+#ifdef _ICONV_CONVERTER_EUC_KR
"euc_kr euckr\n"
#endif
-#ifdef ICONV_CONVERTER_EUC_TW
+#ifdef _ICONV_CONVERTER_EUC_TW
"euc_tw euctw\n"
#endif
-#ifdef ICONV_CONVERTER_ISO_10646_UCS_2
-"iso_10646_ucs_2 iso10646_ucs_2 iso_10646_ucs2 iso10646_ucs2 iso1064ucs2\n"
+#ifdef _ICONV_CONVERTER_ISO_10646_UCS_2
+"iso_10646_ucs_2 iso10646_ucs_2 iso_10646_ucs2 iso10646_ucs2 iso1064ucs2 ucs2 ucs_2\n"
#endif
-#ifdef ICONV_CONVERTER_ISO_10646_UCS_4
-"iso_10646_ucs_4 iso10646_ucs_4 iso_10646_ucs4 iso10646_ucs4 iso1064ucs4\n"
+#ifdef _ICONV_CONVERTER_ISO_10646_UCS_4
+"iso_10646_ucs_4 iso10646_ucs_4 iso_10646_ucs4 iso10646_ucs4 iso1064ucs4 ucs4 ucs_4\n"
#endif
-#ifdef ICONV_CONVERTER_UCS_2_INTERNAL
+#ifdef _ICONV_CONVERTER_UCS_2_INTERNAL
"ucs_2_internal ucs2_internal ucs2internal\n"
#endif
-#ifdef ICONV_CONVERTER_UCS_4_INTERNAL
+#ifdef _ICONV_CONVERTER_UCS_4_INTERNAL
"ucs_4_internal ucs4_internal ucs4internal\n"
#endif
-#ifdef ICONV_CONVERTER_UTF_16
-"utf_16 utf16 utf_16be utf16be\n"
+#ifdef _ICONV_CONVERTER_UTF_16
+"utf_16 utf16\n"
#endif
-#ifdef ICONV_CONVERTER_UTF_8
+#ifdef _ICONV_CONVERTER_UTF_8
"utf_8 utf8\n"
#endif
""
};
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/biccs.c b/newlib/libc/iconv/lib/biccs.c
index 5a8a951..f7ce6be 100644
--- a/newlib/libc/iconv/lib/biccs.c
+++ b/newlib/libc/iconv/lib/biccs.c
@@ -23,155 +23,150 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
-#ifdef ENABLE_ICONV
-
#include "deps.h"
-#include <_ansi.h>
#include "local.h"
-#ifdef ICONV_CONVERTER_BIG5
-extern _CONST unsigned char iconv_ccs_table_big5[];
+#ifdef _ICONV_CONVERTER_BIG5
+extern _CONST unsigned char _iconv_ccs_table_big5[];
#endif
-#ifdef ICONV_CONVERTER_CNS11643_PLANE1
-extern _CONST unsigned char iconv_ccs_table_cns11643_plane1[];
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE1
+extern _CONST unsigned char _iconv_ccs_table_cns11643_plane1[];
#endif
-#ifdef ICONV_CONVERTER_CNS11643_PLANE2
-extern _CONST unsigned char iconv_ccs_table_cns11643_plane2[];
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE2
+extern _CONST unsigned char _iconv_ccs_table_cns11643_plane2[];
#endif
-#ifdef ICONV_CONVERTER_CNS11643_PLANE14
-extern _CONST unsigned char iconv_ccs_table_cns11643_plane14[];
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE14
+extern _CONST unsigned char _iconv_ccs_table_cns11643_plane14[];
#endif
-#ifdef ICONV_CONVERTER_CP775
-extern _CONST unsigned char iconv_ccs_table_cp775[];
+#ifdef _ICONV_CONVERTER_CP775
+extern _CONST unsigned char _iconv_ccs_table_cp775[];
#endif
-#ifdef ICONV_CONVERTER_CP850
-extern _CONST unsigned char iconv_ccs_table_cp850[];
+#ifdef _ICONV_CONVERTER_CP850
+extern _CONST unsigned char _iconv_ccs_table_cp850[];
#endif
-#ifdef ICONV_CONVERTER_CP852
-extern _CONST unsigned char iconv_ccs_table_cp852[];
+#ifdef _ICONV_CONVERTER_CP852
+extern _CONST unsigned char _iconv_ccs_table_cp852[];
#endif
-#ifdef ICONV_CONVERTER_CP855
-extern _CONST unsigned char iconv_ccs_table_cp855[];
+#ifdef _ICONV_CONVERTER_CP855
+extern _CONST unsigned char _iconv_ccs_table_cp855[];
#endif
-#ifdef ICONV_CONVERTER_CP866
-extern _CONST unsigned char iconv_ccs_table_cp866[];
+#ifdef _ICONV_CONVERTER_CP866
+extern _CONST unsigned char _iconv_ccs_table_cp866[];
#endif
-#ifdef ICONV_CONVERTER_GB_2312_80
-extern _CONST unsigned char iconv_ccs_table_gb_2312_80[];
+#ifdef _ICONV_CONVERTER_GB_2312_80
+extern _CONST unsigned char _iconv_ccs_table_gb_2312_80[];
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_1
-extern _CONST unsigned char iconv_ccs_table_iso_8859_1[];
+#ifdef _ICONV_CONVERTER_ISO_8859_1
+extern _CONST unsigned char _iconv_ccs_table_iso_8859_1[];
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_15
-extern _CONST unsigned char iconv_ccs_table_iso_8859_15[];
+#ifdef _ICONV_CONVERTER_ISO_8859_15
+extern _CONST unsigned char _iconv_ccs_table_iso_8859_15[];
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_2
-extern _CONST unsigned char iconv_ccs_table_iso_8859_2[];
+#ifdef _ICONV_CONVERTER_ISO_8859_2
+extern _CONST unsigned char _iconv_ccs_table_iso_8859_2[];
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_4
-extern _CONST unsigned char iconv_ccs_table_iso_8859_4[];
+#ifdef _ICONV_CONVERTER_ISO_8859_4
+extern _CONST unsigned char _iconv_ccs_table_iso_8859_4[];
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_5
-extern _CONST unsigned char iconv_ccs_table_iso_8859_5[];
+#ifdef _ICONV_CONVERTER_ISO_8859_5
+extern _CONST unsigned char _iconv_ccs_table_iso_8859_5[];
#endif
-#ifdef ICONV_CONVERTER_JIS_X0201
-extern _CONST unsigned char iconv_ccs_table_jis_x0201[];
+#ifdef _ICONV_CONVERTER_JIS_X0201
+extern _CONST unsigned char _iconv_ccs_table_jis_x0201[];
#endif
-#ifdef ICONV_CONVERTER_JIS_X0208_1983
-extern _CONST unsigned char iconv_ccs_table_jis_x0208_1983[];
+#ifdef _ICONV_CONVERTER_JIS_X0208_1983
+extern _CONST unsigned char _iconv_ccs_table_jis_x0208_1983[];
#endif
-#ifdef ICONV_CONVERTER_JIS_X0212_1990
-extern _CONST unsigned char iconv_ccs_table_jis_x0212_1990[];
+#ifdef _ICONV_CONVERTER_JIS_X0212_1990
+extern _CONST unsigned char _iconv_ccs_table_jis_x0212_1990[];
#endif
-#ifdef ICONV_CONVERTER_KOI8_R
-extern _CONST unsigned char iconv_ccs_table_koi8_r[];
+#ifdef _ICONV_CONVERTER_KOI8_R
+extern _CONST unsigned char _iconv_ccs_table_koi8_r[];
#endif
-#ifdef ICONV_CONVERTER_KOI8_U
-extern _CONST unsigned char iconv_ccs_table_koi8_u[];
+#ifdef _ICONV_CONVERTER_KOI8_U
+extern _CONST unsigned char _iconv_ccs_table_koi8_u[];
#endif
-#ifdef ICONV_CONVERTER_KSX1001
-extern _CONST unsigned char iconv_ccs_table_ksx1001[];
+#ifdef _ICONV_CONVERTER_KSX1001
+extern _CONST unsigned char _iconv_ccs_table_ksx1001[];
#endif
-#ifdef ICONV_CONVERTER_SHIFT_JIS
-extern _CONST unsigned char iconv_ccs_table_shift_jis[];
+#ifdef _ICONV_CONVERTER_SHIFT_JIS
+extern _CONST unsigned char _iconv_ccs_table_shift_jis[];
#endif
-#ifdef ICONV_CONVERTER_US_ASCII
-extern _CONST unsigned char iconv_ccs_table_us_ascii[];
+#ifdef _ICONV_CONVERTER_US_ASCII
+extern _CONST unsigned char _iconv_ccs_table_us_ascii[];
#endif
-_CONST iconv_builtin_table iconv_builtin_ccs[] =
+_CONST iconv_builtin_table_t _iconv_builtin_ccs[] =
{
-#ifdef ICONV_CONVERTER_BIG5
- {"big5", (_CONST _VOID_PTR)&iconv_ccs_table_big5},
+#ifdef _ICONV_CONVERTER_BIG5
+ {"big5", (_CONST _VOID_PTR)&_iconv_ccs_table_big5},
#endif
-#ifdef ICONV_CONVERTER_CNS11643_PLANE1
- {"cns11643_plane1", (_CONST _VOID_PTR)&iconv_ccs_table_cns11643_plane1},
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE1
+ {"cns11643_plane1", (_CONST _VOID_PTR)&_iconv_ccs_table_cns11643_plane1},
#endif
-#ifdef ICONV_CONVERTER_CNS11643_PLANE2
- {"cns11643_plane2", (_CONST _VOID_PTR)&iconv_ccs_table_cns11643_plane2},
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE2
+ {"cns11643_plane2", (_CONST _VOID_PTR)&_iconv_ccs_table_cns11643_plane2},
#endif
-#ifdef ICONV_CONVERTER_CNS11643_PLANE14
- {"cns11643_plane14", (_CONST _VOID_PTR)&iconv_ccs_table_cns11643_plane14},
+#ifdef _ICONV_CONVERTER_CNS11643_PLANE14
+ {"cns11643_plane14", (_CONST _VOID_PTR)&_iconv_ccs_table_cns11643_plane14},
#endif
-#ifdef ICONV_CONVERTER_CP775
- {"cp775", (_CONST _VOID_PTR)&iconv_ccs_table_cp775},
+#ifdef _ICONV_CONVERTER_CP775
+ {"cp775", (_CONST _VOID_PTR)&_iconv_ccs_table_cp775},
#endif
-#ifdef ICONV_CONVERTER_CP850
- {"cp850", (_CONST _VOID_PTR)&iconv_ccs_table_cp850},
+#ifdef _ICONV_CONVERTER_CP850
+ {"cp850", (_CONST _VOID_PTR)&_iconv_ccs_table_cp850},
#endif
-#ifdef ICONV_CONVERTER_CP852
- {"cp852", (_CONST _VOID_PTR)&iconv_ccs_table_cp852},
+#ifdef _ICONV_CONVERTER_CP852
+ {"cp852", (_CONST _VOID_PTR)&_iconv_ccs_table_cp852},
#endif
-#ifdef ICONV_CONVERTER_CP855
- {"cp855", (_CONST _VOID_PTR)&iconv_ccs_table_cp855},
+#ifdef _ICONV_CONVERTER_CP855
+ {"cp855", (_CONST _VOID_PTR)&_iconv_ccs_table_cp855},
#endif
-#ifdef ICONV_CONVERTER_CP866
- {"cp866", (_CONST _VOID_PTR)&iconv_ccs_table_cp866},
+#ifdef _ICONV_CONVERTER_CP866
+ {"cp866", (_CONST _VOID_PTR)&_iconv_ccs_table_cp866},
#endif
-#ifdef ICONV_CONVERTER_GB_2312_80
- {"gb_2312_80", (_CONST _VOID_PTR)&iconv_ccs_table_gb_2312_80},
+#ifdef _ICONV_CONVERTER_GB_2312_80
+ {"gb_2312_80", (_CONST _VOID_PTR)&_iconv_ccs_table_gb_2312_80},
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_1
- {"iso_8859_1", (_CONST _VOID_PTR)&iconv_ccs_table_iso_8859_1},
+#ifdef _ICONV_CONVERTER_ISO_8859_1
+ {"iso_8859_1", (_CONST _VOID_PTR)&_iconv_ccs_table_iso_8859_1},
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_15
- {"iso_8859_15", (_CONST _VOID_PTR)&iconv_ccs_table_iso_8859_15},
+#ifdef _ICONV_CONVERTER_ISO_8859_15
+ {"iso_8859_15", (_CONST _VOID_PTR)&_iconv_ccs_table_iso_8859_15},
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_2
- {"iso_8859_2", (_CONST _VOID_PTR)&iconv_ccs_table_iso_8859_2},
+#ifdef _ICONV_CONVERTER_ISO_8859_2
+ {"iso_8859_2", (_CONST _VOID_PTR)&_iconv_ccs_table_iso_8859_2},
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_4
- {"iso_8859_4", (_CONST _VOID_PTR)&iconv_ccs_table_iso_8859_4},
+#ifdef _ICONV_CONVERTER_ISO_8859_4
+ {"iso_8859_4", (_CONST _VOID_PTR)&_iconv_ccs_table_iso_8859_4},
#endif
-#ifdef ICONV_CONVERTER_ISO_8859_5
- {"iso_8859_5", (_CONST _VOID_PTR)&iconv_ccs_table_iso_8859_5},
+#ifdef _ICONV_CONVERTER_ISO_8859_5
+ {"iso_8859_5", (_CONST _VOID_PTR)&_iconv_ccs_table_iso_8859_5},
#endif
-#ifdef ICONV_CONVERTER_JIS_X0201
- {"jis_x0201", (_CONST _VOID_PTR)&iconv_ccs_table_jis_x0201},
+#ifdef _ICONV_CONVERTER_JIS_X0201
+ {"jis_x0201", (_CONST _VOID_PTR)&_iconv_ccs_table_jis_x0201},
#endif
-#ifdef ICONV_CONVERTER_JIS_X0208_1983
- {"jis_x0208_1983", (_CONST _VOID_PTR)&iconv_ccs_table_jis_x0208_1983},
+#ifdef _ICONV_CONVERTER_JIS_X0208_1983
+ {"jis_x0208_1983", (_CONST _VOID_PTR)&_iconv_ccs_table_jis_x0208_1983},
#endif
-#ifdef ICONV_CONVERTER_JIS_X0212_1990
- {"jis_x0212_1990", (_CONST _VOID_PTR)&iconv_ccs_table_jis_x0212_1990},
+#ifdef _ICONV_CONVERTER_JIS_X0212_1990
+ {"jis_x0212_1990", (_CONST _VOID_PTR)&_iconv_ccs_table_jis_x0212_1990},
#endif
-#ifdef ICONV_CONVERTER_KOI8_R
- {"koi8_r", (_CONST _VOID_PTR)&iconv_ccs_table_koi8_r},
+#ifdef _ICONV_CONVERTER_KOI8_R
+ {"koi8_r", (_CONST _VOID_PTR)&_iconv_ccs_table_koi8_r},
#endif
-#ifdef ICONV_CONVERTER_KOI8_U
- {"koi8_u", (_CONST _VOID_PTR)&iconv_ccs_table_koi8_u},
+#ifdef _ICONV_CONVERTER_KOI8_U
+ {"koi8_u", (_CONST _VOID_PTR)&_iconv_ccs_table_koi8_u},
#endif
-#ifdef ICONV_CONVERTER_KSX1001
- {"ksx1001", (_CONST _VOID_PTR)&iconv_ccs_table_ksx1001},
+#ifdef _ICONV_CONVERTER_KSX1001
+ {"ksx1001", (_CONST _VOID_PTR)&_iconv_ccs_table_ksx1001},
#endif
-#ifdef ICONV_CONVERTER_SHIFT_JIS
- {"shift_jis", (_CONST _VOID_PTR)&iconv_ccs_table_shift_jis},
+#ifdef _ICONV_CONVERTER_SHIFT_JIS
+ {"shift_jis", (_CONST _VOID_PTR)&_iconv_ccs_table_shift_jis},
#endif
-#ifdef ICONV_CONVERTER_US_ASCII
- {"us_ascii", (_CONST _VOID_PTR)&iconv_ccs_table_us_ascii},
+#ifdef _ICONV_CONVERTER_US_ASCII
+ {"us_ascii", (_CONST _VOID_PTR)&_iconv_ccs_table_us_ascii},
#endif
- {NULL, NULL}
+ {NULL, (_CONST _VOID_PTR)NULL}
};
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/bices.c b/newlib/libc/iconv/lib/bices.c
index 39587a0..b87213f 100644
--- a/newlib/libc/iconv/lib/bices.c
+++ b/newlib/libc/iconv/lib/bices.c
@@ -23,80 +23,75 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
-#ifdef ENABLE_ICONV
-
#include "deps.h"
-#include <_ansi.h>
#include "local.h"
/*
* Each known CES should be registered here
*/
-#ifdef ICONV_CONVERTER_EUC_JP
-extern _CONST struct iconv_ces_desc iconv_ces_euc_jp;
+#ifdef _ICONV_CONVERTER_EUC_JP
+extern _CONST struct iconv_ces_desc _iconv_ces_module_euc_jp;
#endif
-#ifdef ICONV_CONVERTER_EUC_KR
-extern _CONST struct iconv_ces_desc iconv_ces_euc_kr;
+#ifdef _ICONV_CONVERTER_EUC_KR
+extern _CONST struct iconv_ces_desc _iconv_ces_module_euc_kr;
#endif
-#ifdef ICONV_CONVERTER_EUC_TW
-extern _CONST struct iconv_ces_desc iconv_ces_euc_tw;
+#ifdef _ICONV_CONVERTER_EUC_TW
+extern _CONST struct iconv_ces_desc _iconv_ces_module_euc_tw;
#endif
-#ifdef ICONV_CONVERTER_GB2312
-extern _CONST struct iconv_ces_desc iconv_ces_gb2312;
+#ifdef _ICONV_CONVERTER_GB2312
+extern _CONST struct iconv_ces_desc _iconv_ces_module_gb2312;
#endif
-#ifdef ICONV_CONVERTER_ISO_10646_UCS_2
-extern _CONST struct iconv_ces_desc iconv_ces_iso_10646_ucs_2;
+#ifdef _ICONV_CONVERTER_ISO_10646_UCS_2
+extern _CONST struct iconv_ces_desc _iconv_ces_module_iso_10646_ucs_2;
#endif
-#ifdef ICONV_CONVERTER_ISO_10646_UCS_4
-extern _CONST struct iconv_ces_desc iconv_ces_iso_10646_ucs_4;
+#ifdef _ICONV_CONVERTER_ISO_10646_UCS_4
+extern _CONST struct iconv_ces_desc _iconv_ces_module_iso_10646_ucs_4;
#endif
-#ifdef ICONV_CONVERTER_UCS_2_INTERNAL
-extern _CONST struct iconv_ces_desc iconv_ces_ucs_2_internal;
+#ifdef _ICONV_CONVERTER_UCS_2_INTERNAL
+extern _CONST struct iconv_ces_desc _iconv_ces_module_ucs_2_internal;
#endif
-#ifdef ICONV_CONVERTER_UCS_4_INTERNAL
-extern _CONST struct iconv_ces_desc iconv_ces_ucs_4_internal;
+#ifdef _ICONV_CONVERTER_UCS_4_INTERNAL
+extern _CONST struct iconv_ces_desc _iconv_ces_module_ucs_4_internal;
#endif
-#ifdef ICONV_CONVERTER_UTF_16
-extern _CONST struct iconv_ces_desc iconv_ces_utf_16;
+#ifdef _ICONV_CONVERTER_UTF_16
+extern _CONST struct iconv_ces_desc _iconv_ces_module_utf_16;
#endif
-#ifdef ICONV_CONVERTER_UTF_8
-extern _CONST struct iconv_ces_desc iconv_ces_utf_8;
+#ifdef _ICONV_CONVERTER_UTF_8
+extern _CONST struct iconv_ces_desc _iconv_ces_module_utf_8;
#endif
-_CONST iconv_builtin_table iconv_builtin_ces[] =
+_CONST iconv_builtin_table_t _iconv_builtin_ces[] =
{
-#ifdef ICONV_CONVERTER_EUC_JP
- {(_VOID_PTR)"euc_jp", (_VOID_PTR)&iconv_ces_euc_jp},
+#ifdef _ICONV_CONVERTER_EUC_JP
+ {"euc_jp", (_CONST _VOID_PTR)&_iconv_ces_module_euc_jp},
#endif
-#ifdef ICONV_CONVERTER_EUC_KR
- {(_VOID_PTR)"euc_kr", (_VOID_PTR)&iconv_ces_euc_kr},
+#ifdef _ICONV_CONVERTER_EUC_KR
+ {"euc_kr", (_CONST _VOID_PTR)&_iconv_ces_module_euc_kr},
#endif
-#ifdef ICONV_CONVERTER_EUC_TW
- {(_VOID_PTR)"euc_tw", (_VOID_PTR)&iconv_ces_euc_tw},
+#ifdef _ICONV_CONVERTER_EUC_TW
+ {"euc_tw", (_CONST _VOID_PTR)&_iconv_ces_module_euc_tw},
#endif
-#ifdef ICONV_CONVERTER_GB2312
- {(_VOID_PTR)"gb_2312_80", (_VOID_PTR)&iconv_ces_gb2312},
+#ifdef _ICONV_CONVERTER_GB2312
+ {"gb_2312_80", (_CONST _VOID_PTR)&_iconv_ces_module_gb2312},
#endif
-#ifdef ICONV_CONVERTER_ISO_10646_UCS_2
- {(_VOID_PTR)"iso_10646_ucs_2", (_VOID_PTR)&iconv_ces_iso_10646_ucs_2},
+#ifdef _ICONV_CONVERTER_ISO_10646_UCS_2
+ {"iso_10646_ucs_2", (_CONST _VOID_PTR)&_iconv_ces_module_iso_10646_ucs_2},
#endif
-#ifdef ICONV_CONVERTER_ISO_10646_UCS_4
- {(_VOID_PTR)"iso_10646_ucs_4", (_VOID_PTR)&iconv_ces_iso_10646_ucs_4},
+#ifdef _ICONV_CONVERTER_ISO_10646_UCS_4
+ {"iso_10646_ucs_4", (_CONST _VOID_PTR)&_iconv_ces_module_iso_10646_ucs_4},
#endif
-#ifdef ICONV_CONVERTER_UCS_2_INTERNAL
- {(_VOID_PTR)"ucs_2_internal", (_VOID_PTR)&iconv_ces_ucs_2_internal},
+#ifdef _ICONV_CONVERTER_UCS_2_INTERNAL
+ {"ucs_2_internal", (_CONST _VOID_PTR)&_iconv_ces_module_ucs_2_internal},
#endif
-#ifdef ICONV_CONVERTER_UCS_4_INTERNAL
- {(_VOID_PTR)"ucs_4_internal", (_VOID_PTR)&iconv_ces_ucs_4_internal},
+#ifdef _ICONV_CONVERTER_UCS_4_INTERNAL
+ {"ucs_4_internal", (_CONST _VOID_PTR)&_iconv_ces_module_ucs_4_internal},
#endif
-#ifdef ICONV_CONVERTER_UTF_16
- {(_VOID_PTR)"utf_16", (_VOID_PTR)&iconv_ces_utf_16},
+#ifdef _ICONV_CONVERTER_UTF_16
+ {"utf_16", (_CONST _VOID_PTR)&_iconv_ces_module_utf_16},
#endif
-#ifdef ICONV_CONVERTER_UTF_8
- {(_VOID_PTR)"utf_8", (_VOID_PTR)&iconv_ces_utf_8},
+#ifdef _ICONV_CONVERTER_UTF_8
+ {"utf_8", (_CONST _VOID_PTR)&_iconv_ces_module_utf_8},
#endif
- {NULL, NULL}
+ {NULL, (_CONST _VOID_PTR)NULL}
};
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/ccs.c b/newlib/libc/iconv/lib/ccs.c
index 856223e..79c64ff 100644
--- a/newlib/libc/iconv/lib/ccs.c
+++ b/newlib/libc/iconv/lib/ccs.c
@@ -25,15 +25,12 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <reent.h>
#include <endian.h>
-#include <_ansi.h>
#include <sys/param.h>
#include <sys/types.h>
#include "local.h"
@@ -96,7 +93,7 @@ _DEFUN(letohl, (s), __uint32_t l)
typedef struct {
unsigned char label[8]; /* CSconvT<N>; N=[0-3] */
__uint32_t tables[2]; /* offsets to 2 unidirectional tables */
-} iconv_ccs_convtable;
+} iconv_ccs_convtable_t;
#define ICONV_TBL_LABEL "\003CSCT"
#define ICONV_TBL_LABEL_SIZE 5
@@ -105,7 +102,7 @@ typedef struct {
#define ICONV_TBL_VERSION(table) ((table)->label[7])
/* Indices for unidirectional conversion tables */
-enum { iconv_ccs_to_ucs = 0, iconv_ccs_from_ucs = 1 };
+enum { _iconv_ccs_to_ucs = 0, _iconv_ccs_from_ucs = 1 };
/* Unidirectional conversion table types */
@@ -113,29 +110,29 @@ enum { iconv_ccs_to_ucs = 0, iconv_ccs_from_ucs = 1 };
/* one-level tables */
typedef struct {
ucs2_t data[128];
-} iconv_ccs_table_7bit; /* 7-bit charset to Unicode */
+} iconv_ccs_table_7bit_t; /* 7-bit charset to Unicode */
typedef struct {
ucs2_t data[256];
-} iconv_ccs_table_8bit; /* 8-bit charset to Unicode */
+} iconv_ccs_table_8bit_t; /* 8-bit charset to Unicode */
/* two-level tables */
typedef struct {
__uint32_t data[128];
-} iconv_ccs_table_14bit; /* 14-bit charset to Unicode */
+} iconv_ccs_table_14bit_t; /* 14-bit charset to Unicode */
typedef struct {
__uint32_t data[256];
-} iconv_ccs_table_16bit; /* 16-bit charset to Unicode;
- * Unicode to any charset */
+} iconv_ccs_table_16bit_t; /* 16-bit charset to Unicode;
+ * Unicode to any charset */
/* abstract table */
typedef union {
- iconv_ccs_table_7bit _7bit;
- iconv_ccs_table_8bit _8bit;
- iconv_ccs_table_14bit _14bit;
- iconv_ccs_table_16bit _16bit;
-} iconv_ccs_table_abstract;
+ iconv_ccs_table_7bit_t _7bit;
+ iconv_ccs_table_8bit_t _8bit;
+ iconv_ccs_table_14bit_t _14bit;
+ iconv_ccs_table_16bit_t _16bit;
+} iconv_ccs_table_abstract_t;
/* host and network byte order array element macros */
#define iconv_table_elt_le(base, i, type) \
@@ -144,7 +141,7 @@ typedef union {
#define iconv_table_elt_be(base, i, type) \
((type *)(((char *)(base)) + betohl(((__int32_t *)(base))[(i)])))
-#define abstable ((_CONST iconv_ccs_table_abstract *)table)
+#define abstable ((_CONST iconv_ccs_table_abstract_t *)table)
/* Functions for little endian byte order tables */
static ucs2_t
@@ -168,11 +165,11 @@ _DEFUN(cvt_14bit_le, (table, ch),
_CONST _VOID_PTR table _AND
ucs2_t ch)
{
- _CONST iconv_ccs_table_7bit *sub_table;
+ _CONST iconv_ccs_table_7bit_t *sub_table;
if (ch & 0x8080)
return UCS_CHAR_INVALID;
- sub_table = iconv_table_elt_le(table, ch >> 8, iconv_ccs_table_7bit);
+ sub_table = iconv_table_elt_le(table, ch >> 8, iconv_ccs_table_7bit_t);
return sub_table == &(abstable->_7bit) ? UCS_CHAR_INVALID
: letohs(sub_table->data[ch & 0x7F]);
}
@@ -182,8 +179,8 @@ _DEFUN(cvt_16bit_le, (table, ch),
_CONST _VOID_PTR table _AND
ucs2_t ch)
{
- _CONST iconv_ccs_table_8bit *sub_table =
- iconv_table_elt_le(table, ch >> 8, iconv_ccs_table_8bit);
+ _CONST iconv_ccs_table_8bit_t *sub_table =
+ iconv_table_elt_le(table, ch >> 8, iconv_ccs_table_8bit_t);
return sub_table == &(abstable->_8bit) ? UCS_CHAR_INVALID
: letohs(sub_table->data[ch & 0xFF]);
}
@@ -215,11 +212,11 @@ _DEFUN(cvt_14bit_be, (table, ch),
_CONST _VOID_PTR table _AND
ucs2_t ch)
{
- _CONST iconv_ccs_table_7bit *sub_table;
+ _CONST iconv_ccs_table_7bit_t *sub_table;
if (ch & 0x8080)
return UCS_CHAR_INVALID;
- sub_table = iconv_table_elt_be(table, ch >> 8, iconv_ccs_table_7bit);
+ sub_table = iconv_table_elt_be(table, ch >> 8, iconv_ccs_table_7bit_t);
return sub_table == &(abstable->_7bit) ? UCS_CHAR_INVALID
: betohs(sub_table->data[ch & 0x7F]);
}
@@ -229,8 +226,8 @@ _DEFUN(cvt_16bit_be, (table, ch),
_CONST _VOID_PTR table _AND
ucs2_t ch)
{
- _CONST iconv_ccs_table_8bit *sub_table =
- iconv_table_elt_be(table, ch >> 8, iconv_ccs_table_8bit);
+ _CONST iconv_ccs_table_8bit_t *sub_table =
+ iconv_table_elt_be(table, ch >> 8, iconv_ccs_table_8bit_t);
return sub_table == &(abstable->_8bit) ? UCS_CHAR_INVALID
: betohs(sub_table->data[ch & 0xFF]);
}
@@ -245,7 +242,7 @@ static iconv_ccs_convert_t * _CONST converters_be[] = {
static int
_DEFUN(ccs_init, (ccs, table),
struct iconv_ccs *ccs _AND
- _CONST iconv_ccs_convtable *table)
+ _CONST iconv_ccs_convtable_t *table)
{
if (strncmp(table->label, ICONV_TBL_LABEL, ICONV_TBL_LABEL_SIZE))
return EINVAL;
@@ -256,21 +253,21 @@ _DEFUN(ccs_init, (ccs, table),
if (ICONV_TBL_BYTE_ORDER(table) == ICONV_CCT_LE) {
/* Little Endian */
ccs->from_ucs = iconv_table_elt_le(table->tables,
- iconv_ccs_from_ucs,
- _CONST iconv_ccs_convtable);
+ _iconv_ccs_from_ucs,
+ _CONST iconv_ccs_convtable_t);
ccs->to_ucs = iconv_table_elt_le(table->tables,
- iconv_ccs_to_ucs,
- _CONST iconv_ccs_convtable);
+ _iconv_ccs_to_ucs,
+ _CONST iconv_ccs_convtable_t);
ccs->convert_from_ucs = cvt_16bit_le;
ccs->convert_to_ucs = converters_le[ICONV_TBL_VERSION(table)];
} else {
/* Big Endian (Network Byte Order) */
ccs->from_ucs = iconv_table_elt_be(table->tables,
- iconv_ccs_from_ucs,
- _CONST iconv_ccs_convtable);
+ _iconv_ccs_from_ucs,
+ _CONST iconv_ccs_convtable_t);
ccs->to_ucs = iconv_table_elt_be(table->tables,
- iconv_ccs_to_ucs,
- _CONST iconv_ccs_convtable);
+ _iconv_ccs_to_ucs,
+ _CONST iconv_ccs_convtable_t);
ccs->convert_from_ucs = cvt_16bit_be;
ccs->convert_to_ucs = converters_be[ICONV_TBL_VERSION(table)];
}
@@ -291,10 +288,10 @@ _DEFUN(iconv_ccs_init_builtin, (ccs, name),
struct iconv_ccs *ccs _AND
_CONST char *name)
{
- _CONST iconv_builtin_table *ccs_ptr;
- for (ccs_ptr = iconv_builtin_ccs; ccs_ptr->key != NULL; ccs_ptr ++) {
+ _CONST iconv_builtin_table_t *ccs_ptr;
+ for (ccs_ptr = _iconv_builtin_ccs; ccs_ptr->key != NULL; ccs_ptr ++) {
if (strcmp(ccs_ptr->key, name) == 0) {
- int res = ccs_init(ccs, (_CONST iconv_ccs_convtable *)
+ int res = ccs_init(ccs, (_CONST iconv_ccs_convtable_t *)
(ccs_ptr->value));
if (res == 0)
ccs->close = close_builtin;
@@ -306,7 +303,7 @@ _DEFUN(iconv_ccs_init_builtin, (ccs, name),
/* External CCS initialisation */
struct external_extra {
- _CONST iconv_ccs_convtable *ptr;
+ _CONST iconv_ccs_convtable_t *ptr;
off_t size;
};
@@ -327,7 +324,7 @@ _DEFUN(iconv_ccs_init_external, (rptr, ccs, name),
_CONST char *name)
{
char *file;
- _CONST iconv_ccs_convtable *ccs_ptr;
+ _CONST iconv_ccs_convtable_t *ccs_ptr;
_CONST char *datapath;
_iconv_fd_t *extra;
@@ -358,7 +355,7 @@ _DEFUN(iconv_ccs_init_external, (rptr, ccs, name),
}
_free_r(rptr, (_VOID_PTR)name);
- ccs_ptr = (_CONST iconv_ccs_convtable *)extra->mem;
+ ccs_ptr = (_CONST iconv_ccs_convtable_t *)extra->mem;
if (ccs_init(ccs, ccs_ptr) != 0) {
_iconv_unload_file(rptr, extra);
_free_r(rptr, (_VOID_PTR)extra);
@@ -371,10 +368,10 @@ _DEFUN(iconv_ccs_init_external, (rptr, ccs, name),
}
int
-_DEFUN(iconv_ccs_init, (rptr, ccs, name),
- struct _reent *rptr _AND
- struct iconv_ccs *ccs _AND
- _CONST char *name)
+_DEFUN(_iconv_ccs_init, (rptr, ccs, name),
+ struct _reent *rptr _AND
+ struct iconv_ccs *ccs _AND
+ _CONST char *name)
{
int res = iconv_ccs_init_builtin(ccs, name);
if (res)
@@ -384,5 +381,3 @@ _DEFUN(iconv_ccs_init, (rptr, ccs, name),
return res;
}
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/ces.c b/newlib/libc/iconv/lib/ces.c
index 1ac6174..b63b927 100644
--- a/newlib/libc/iconv/lib/ces.c
+++ b/newlib/libc/iconv/lib/ces.c
@@ -25,9 +25,6 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
-#include <_ansi.h>
#include <errno.h>
#include <limits.h>
#include <stdio.h>
@@ -67,8 +64,8 @@ _DEFUN(ces_init_builtin, (rptr, ces, name),
struct iconv_ces *ces _AND
_CONST char *name)
{
- _CONST iconv_builtin_table *ces_ptr;
- for (ces_ptr = iconv_builtin_ces; ces_ptr->key != NULL; ces_ptr ++)
+ _CONST iconv_builtin_table_t *ces_ptr;
+ for (ces_ptr = _iconv_builtin_ces; ces_ptr->key != NULL; ces_ptr ++)
if (strcmp(ces_ptr->key, name) == 0)
return ces_instance_init(rptr, ces, name,
(_CONST struct iconv_ces_desc *)(ces_ptr->value));
@@ -76,21 +73,21 @@ _DEFUN(ces_init_builtin, (rptr, ces, name),
}
int
-_DEFUN(iconv_ces_init, (rptr, ces, name),
- struct _reent *rptr _AND
- struct iconv_ces *ces _AND
- _CONST char *name)
+_DEFUN(_iconv_ces_init, (rptr, ces, name),
+ struct _reent *rptr _AND
+ struct iconv_ces *ces _AND
+ _CONST char *name)
{
return ces_init_builtin(rptr, ces, name)
- && ces_instance_init(rptr, ces, name, &iconv_ces_table_driven);
+ && ces_instance_init(rptr, ces, name, &_iconv_ces_table_driven);
}
int
-_DEFUN(iconv_ces_init_state, (rptr, res, name, data),
- struct _reent *rptr _AND
- _VOID_PTR *res _AND
- _CONST char *name _AND
- _CONST _VOID_PTR data)
+_DEFUN(_iconv_ces_init_state, (rptr, res, name, data),
+ struct _reent *rptr _AND
+ _VOID_PTR *res _AND
+ _CONST char *name _AND
+ _CONST _VOID_PTR data)
{
if ((*res = _malloc_r(rptr, sizeof(int))) == NULL)
return __errno_r(rptr);
@@ -99,7 +96,7 @@ _DEFUN(iconv_ces_init_state, (rptr, res, name, data),
}
int
-_DEFUN(iconv_ces_close_state, (rptr, data),
+_DEFUN(_iconv_ces_close_state, (rptr, data),
struct _reent *rptr _AND
_VOID_PTR data)
{
@@ -109,23 +106,23 @@ _DEFUN(iconv_ces_close_state, (rptr, data),
}
_VOID
-_DEFUN(iconv_ces_reset_state, (data), _VOID_PTR data)
+_DEFUN(_iconv_ces_reset_state, (data), _VOID_PTR data)
{
*(int *)data = 0;
}
int
-_DEFUN(iconv_ces_init_null, (rptr, res, name, data),
- struct _reent *rptr _AND
- _VOID_PTR *res _AND
- _CONST char *name _AND
- _CONST _VOID_PTR data)
+_DEFUN(_iconv_ces_init_null, (rptr, res, name, data),
+ struct _reent *rptr _AND
+ _VOID_PTR *res _AND
+ _CONST char *name _AND
+ _CONST _VOID_PTR data)
{
return 0;
}
int
-_DEFUN(iconv_ces_close_null, (rptr, data),
+_DEFUN(_iconv_ces_close_null, (rptr, data),
struct _reent *rptr _AND
_VOID_PTR data)
{
@@ -133,9 +130,8 @@ _DEFUN(iconv_ces_close_null, (rptr, data),
}
_VOID
-_DEFUN(iconv_ces_reset_null, (data), _VOID_PTR data)
+_DEFUN(_iconv_ces_reset_null, (data), _VOID_PTR data)
{
+ return;
}
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/ces_euc.c b/newlib/libc/iconv/lib/ces_euc.c
index dc5000c..fe7ca7c 100644
--- a/newlib/libc/iconv/lib/ces_euc.c
+++ b/newlib/libc/iconv/lib/ces_euc.c
@@ -1,4 +1,4 @@
-/*-
+/*
* Copyright (c) 1999,2000
* Konstantin Chuguev. All rights reserved.
*
@@ -25,10 +25,7 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
#include "deps.h"
-#include <_ansi.h>
#include <sys/types.h>
#include <stddef.h>
#include <errno.h>
@@ -42,25 +39,25 @@
typedef struct {
int nccs;
struct iconv_ccs ccs[1];
-} iconv_ces_euc_state;
+} iconv_ces_euc_state_t;
int
-_DEFUN(iconv_euc_init, (rptr, data, desc_data, num),
- struct _reent *rptr _AND
- _VOID_PTR *data _AND
- _CONST _VOID_PTR desc_data _AND
- size_t num)
+_DEFUN(_iconv_euc_init, (rptr, data, desc_data, num),
+ struct _reent *rptr _AND
+ _VOID_PTR *data _AND
+ _CONST _VOID_PTR desc_data _AND
+ size_t num)
{
- size_t stsz = sizeof(iconv_ces_euc_state) +
+ size_t stsz = sizeof(iconv_ces_euc_state_t) +
sizeof(struct iconv_ccs) * (num - 1);
int i;
- iconv_ces_euc_state *state = (iconv_ces_euc_state *)_malloc_r(rptr, stsz);
+ iconv_ces_euc_state_t *state = (iconv_ces_euc_state_t *)_malloc_r(rptr, stsz);
if (state == NULL)
return __errno_r(rptr);
for (i = 0; i < num; i++) {
- int res = iconv_ccs_init(rptr, &(state->ccs[i]),
- ((_CONST iconv_ces_euc_ccs *) desc_data)[i].name);
+ int res = _iconv_ccs_init(rptr, &(state->ccs[i]),
+ ((_CONST iconv_ces_euc_ccs_t *) desc_data)[i].name);
if (res) {
while (--i >= 0)
state->ccs[i].close(rptr, &(state->ccs[i]));
@@ -69,16 +66,16 @@ _DEFUN(iconv_euc_init, (rptr, data, desc_data, num),
}
}
state->nccs = num;
- (iconv_ces_euc_state *)*data = state;
+ (iconv_ces_euc_state_t *)*data = state;
return 0;
}
int
-_DEFUN(iconv_euc_close, (rptr, data),
+_DEFUN(_iconv_euc_close, (rptr, data),
struct _reent *rptr _AND
_VOID_PTR data)
{
-#define state ((iconv_ces_euc_state *)data)
+#define state ((iconv_ces_euc_state_t *)data)
int i, res = 0;
for (i = 0; i < state->nccs; i++)
@@ -92,13 +89,13 @@ _DEFUN(iconv_euc_close, (rptr, data),
#define is_7bit(data) ((data)->nbits & 1)
ssize_t
-_DEFUN(iconv_euc_convert_from_ucs, (ces, in, outbuf, outbytesleft),
- struct iconv_ces *ces _AND
- ucs_t in _AND
- unsigned char **outbuf _AND
- size_t *outbytesleft)
+_DEFUN(_iconv_euc_convert_from_ucs, (ces, in, outbuf, outbytesleft),
+ struct iconv_ces *ces _AND
+ ucs_t in _AND
+ unsigned char **outbuf _AND
+ size_t *outbytesleft)
{
- iconv_ces_euc_state *euc_state;
+ iconv_ces_euc_state_t *euc_state;
size_t bytes;
int i;
@@ -106,15 +103,15 @@ _DEFUN(iconv_euc_convert_from_ucs, (ces, in, outbuf, outbytesleft),
return 1; /* No state reinitialization for table charsets */
if (iconv_char32bit(in))
return -1;
- euc_state = (iconv_ces_euc_state *)(ces->data);
+ euc_state = (iconv_ces_euc_state_t *)(ces->data);
for (i = 0; i < euc_state->nccs; i++) {
- _CONST iconv_ces_euc_ccs *ccsattr;
+ _CONST iconv_ces_euc_ccs_t *ccsattr;
_CONST struct iconv_ccs *ccs = &(euc_state->ccs[i]);
ucs_t res = ICONV_CCS_CONVERT_FROM_UCS(ccs, in);
if (res == UCS_CHAR_INVALID)
continue;
- ccsattr = &(((_CONST iconv_ces_euc_ccs *)(ces->desc->data))[i]);
+ ccsattr = &(((_CONST iconv_ces_euc_ccs_t *)(ces->desc->data))[i]);
if (i) {
if (is_7_14bit(ccs))
res |= is_7bit(ccs) ? 0x80 : 0x8080;
@@ -165,21 +162,21 @@ _DEFUN(cvt2ucs, (ccs, inbuf, inbytesleft, hi_plane, bufptr),
}
ucs_t
-_DEFUN(iconv_euc_convert_to_ucs, (ces, inbuf, inbytesleft),
- struct iconv_ces *ces _AND
- _CONST unsigned char **inbuf _AND
- size_t *inbytesleft)
+_DEFUN(_iconv_euc_convert_to_ucs, (ces, inbuf, inbytesleft),
+ struct iconv_ces *ces _AND
+ _CONST unsigned char **inbuf _AND
+ size_t *inbytesleft)
{
- iconv_ces_euc_state *euc_state =
- (iconv_ces_euc_state *)(ces->data);
+ iconv_ces_euc_state_t *euc_state =
+ (iconv_ces_euc_state_t *)(ces->data);
ucs_t res = UCS_CHAR_INVALID;
_CONST unsigned char *ptr;
int i;
if (**inbuf & 0x80) {
for (i = 1; i < euc_state->nccs; i++) {
- _CONST iconv_ces_euc_ccs *ccsattr =
- &(((_CONST iconv_ces_euc_ccs *)
+ _CONST iconv_ces_euc_ccs_t *ccsattr =
+ &(((_CONST iconv_ces_euc_ccs_t *)
(ces->desc->data))[i]);
if (ccsattr->prefixlen + 1 > *inbytesleft)
return UCS_CHAR_NONE;
@@ -204,5 +201,3 @@ _DEFUN(iconv_euc_convert_to_ucs, (ces, inbuf, inbytesleft),
return res;
}
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/ces_iso2022.c b/newlib/libc/iconv/lib/ces_iso2022.c
index 7753db5..5107a0e 100644
--- a/newlib/libc/iconv/lib/ces_iso2022.c
+++ b/newlib/libc/iconv/lib/ces_iso2022.c
@@ -25,9 +25,6 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
-#include <_ansi.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
@@ -37,18 +34,18 @@ typedef struct {
_CONST char *sequence;
size_t length;
int prefix_type;
-} iconv_ces_iso2022_shift;
+} iconv_ces_iso2022_shift_t;
enum { ICONV_PREFIX_STATE = 0, ICONV_PREFIX_LINE, ICONV_PREFIX_CHAR };
-static _CONST iconv_ces_iso2022_shift iso_shift[] = {
+static _CONST iconv_ces_iso2022_shift_t iso_shift[] = {
{ "\x0f", 1, ICONV_PREFIX_STATE },
{ "\x0e", 1, ICONV_PREFIX_LINE },
{ "\x1bN", 2, ICONV_PREFIX_CHAR },
{ "\x1bO", 2, ICONV_PREFIX_CHAR }
};
-#define shift_num (sizeof(iso_shift) / sizeof(iconv_ces_iso2022_shift))
+#define shift_num (sizeof(iso_shift) / sizeof(iconv_ces_iso2022_shift_t))
typedef struct {
int nccs;
@@ -57,28 +54,28 @@ typedef struct {
int shift_tab[shift_num];
char prefix_cache[128];
struct iconv_ccs ccs[1];
-} iconv_ces_iso2022_state;
+} iconv_ces_iso2022_state_t;
int
-_DEFUN(iconv_iso2022_init, (rptr, data, desc_data, num),
- struct _reent *rptr _AND
- _VOID_PTR *data _AND
- _CONST _VOID_PTR desc_data _AND
- size_t num)
+_DEFUN(_iconv_iso2022_init, (rptr, data, desc_data, num),
+ struct _reent *rptr _AND
+ _VOID_PTR *data _AND
+ _CONST _VOID_PTR desc_data _AND
+ size_t num)
{
- size_t stsz = sizeof(iconv_ces_iso2022_state) +
+ size_t stsz = sizeof(iconv_ces_iso2022_state_t) +
sizeof(struct iconv_ccs) * (num - 1);
int i;
- iconv_ces_iso2022_state *state
- = (iconv_ces_iso2022_state *)_malloc_r(rptr, stsz);
+ iconv_ces_iso2022_state_t *state
+ = (iconv_ces_iso2022_state_t *)_malloc_r(rptr, stsz);
if (state == NULL)
return __errno_r(rptr);
bzero(state->prefix_cache, sizeof(state->prefix_cache));
for (i = 0; i < num; i++) {
- _CONST iconv_ces_iso2022_ccs *ccsattr =
- &(((_CONST iconv_ces_iso2022_ccs *)desc_data)[i]);
- int res = iconv_ccs_init(rptr, &(state->ccs[i]), ccsattr->name);
+ _CONST iconv_ces_iso2022_ccs_t *ccsattr =
+ &(((_CONST iconv_ces_iso2022_ccs_t *)desc_data)[i]);
+ int res = _iconv_ccs_init(rptr, &(state->ccs[i]), ccsattr->name);
if (res) {
while (--i >= 0)
state->ccs[i].close(rptr, &(state->ccs[i]));
@@ -92,14 +89,14 @@ _DEFUN(iconv_iso2022_init, (rptr, data, desc_data, num),
}
state->nccs = num;
iconv_iso2022_reset(state);
- (iconv_ces_iso2022_state *)*data = state;
+ (iconv_ces_iso2022_state_t *)*data = state;
return 0;
}
-#define state ((iconv_ces_iso2022_state *)data)
+#define state ((iconv_ces_iso2022_state_t *)data)
int
-_DEFUN(iconv_iso2022_close, (rptr, data),
+_DEFUN(_iconv_iso2022_close, (rptr, data),
struct _reent *rptr _AND
_VOID_PTR data)
{
@@ -112,7 +109,7 @@ _DEFUN(iconv_iso2022_close, (rptr, data),
}
_VOID
-_DEFUN(iconv_iso2022_reset, (data), _VOID_PTR data)
+_DEFUN(_iconv_iso2022_reset, (data), _VOID_PTR data)
{
size_t i;
@@ -125,8 +122,8 @@ _DEFUN(iconv_iso2022_reset, (data), _VOID_PTR data)
#undef state
-#define CES_STATE(ces) ((iconv_ces_iso2022_state *)((ces)->data))
-#define CES_CCSATTR(ces) ((_CONST iconv_ces_iso2022_ccs *) \
+#define CES_STATE(ces) ((iconv_ces_iso2022_state_t *)((ces)->data))
+#define CES_CCSATTR(ces) ((_CONST iconv_ces_iso2022_ccs_t *) \
(((struct iconv_ces_desc *)((ces)->desc))->data))
static _VOID
@@ -134,7 +131,7 @@ _DEFUN(update_shift_state, (ces, ch),
_CONST struct iconv_ces *ces _AND
ucs_t ch)
{
- iconv_ces_iso2022_state *iso_state = CES_STATE(ces);
+ iconv_ces_iso2022_state_t *iso_state = CES_STATE(ces);
size_t i;
if (ch == '\n' && iso_state->previous_char == '\r') {
@@ -156,8 +153,8 @@ _DEFUN(cvt_ucs2iso, (ces, in, outbuf, outbytesleft, cs),
size_t *outbytesleft _AND
int cs)
{
- iconv_ces_iso2022_state *iso_state = CES_STATE(ces);
- _CONST iconv_ces_iso2022_ccs *ccsattr;
+ iconv_ces_iso2022_state_t *iso_state = CES_STATE(ces);
+ _CONST iconv_ces_iso2022_ccs_t *ccsattr;
_CONST struct iconv_ccs *ccs;
ucs_t res;
size_t len = 0;
@@ -210,13 +207,13 @@ _DEFUN(cvt_ucs2iso, (ces, in, outbuf, outbytesleft, cs),
}
ssize_t
-_DEFUN(iconv_iso2022_convert_from_ucs, (ces, in, outbuf, outbytesleft),
- struct iconv_ces *ces _AND
- ucs_t in _AND
- unsigned char **outbuf _AND
- size_t *outbytesleft)
+_DEFUN(_iconv_iso2022_convert_from_ucs, (ces, in, outbuf, outbytesleft),
+ struct iconv_ces *ces _AND
+ ucs_t in _AND
+ unsigned char **outbuf _AND
+ size_t *outbytesleft)
{
- iconv_ces_iso2022_state *iso_state = CES_STATE(ces);
+ iconv_ces_iso2022_state_t *iso_state = CES_STATE(ces);
ssize_t res;
int cs, i;
@@ -262,13 +259,13 @@ _DEFUN(cvt_iso2ucs, (ccs, inbuf, inbytesleft, prefix_type),
}
ucs_t
-_DEFUN(iconv_iso2022_convert_to_ucs, (ces, inbuf, inbytesleft),
- struct iconv_ces *ces _AND
- _CONST unsigned char **inbuf _AND
- size_t *inbytesleft)
+_DEFUN(_iconv_iso2022_convert_to_ucs, (ces, inbuf, inbytesleft),
+ struct iconv_ces *ces _AND
+ _CONST unsigned char **inbuf _AND
+ size_t *inbytesleft)
{
- iconv_ces_iso2022_state *iso_state = CES_STATE(ces);
- _CONST iconv_ces_iso2022_ccs *ccsattr;
+ iconv_ces_iso2022_state_t *iso_state = CES_STATE(ces);
+ _CONST iconv_ces_iso2022_ccs_t *ccsattr;
ucs_t res;
_CONST unsigned char *ptr = *inbuf;
unsigned char byte;
@@ -328,5 +325,3 @@ _DEFUN(iconv_iso2022_convert_to_ucs, (ces, inbuf, inbytesleft),
return res;
}
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/ces_table.c b/newlib/libc/iconv/lib/ces_table.c
index 5fdd007..1844fcd 100644
--- a/newlib/libc/iconv/lib/ces_table.c
+++ b/newlib/libc/iconv/lib/ces_table.c
@@ -25,9 +25,6 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
-#include <_ansi.h>
#include <sys/types.h>
#include <assert.h>
#include <errno.h>
@@ -46,7 +43,7 @@ _DEFUN(table_init, (rptr, data, name, desc_data),
struct iconv_ccs *ccs = _malloc_r(rptr, sizeof(struct iconv_ccs));
if (ccs == NULL)
return __errno_r(rptr);
- res = iconv_ccs_init(rptr, ccs, name);
+ res = _iconv_ccs_init(rptr, ccs, name);
if (res)
_free_r(rptr, ccs);
else
@@ -114,14 +111,12 @@ _DEFUN(convert_to_ucs, (ces, inbuf, inbytesleft),
return res;
}
-_CONST struct iconv_ces_desc iconv_ces_table_driven = {
+_CONST struct iconv_ces_desc _iconv_ces_table_driven = {
table_init,
table_close,
- iconv_ces_reset_null,
+ _iconv_ces_reset_null,
convert_from_ucs,
convert_to_ucs,
NULL
};
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/converter.c b/newlib/libc/iconv/lib/converter.c
index 0ab70cb..34e0b16 100644
--- a/newlib/libc/iconv/lib/converter.c
+++ b/newlib/libc/iconv/lib/converter.c
@@ -25,9 +25,6 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
-#include <_ansi.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
@@ -36,15 +33,15 @@
#include <limits.h>
#include "local.h"
-static iconv_converter *
+static iconv_converter_t *
_DEFUN(converter_init, (rptr, conv_func, close_func, extra),
struct _reent *rptr _AND
iconv_conv_t conv_func _AND
iconv_close_t close_func _AND
size_t extra)
{
- iconv_converter *res = _malloc_r(rptr, sizeof(iconv_converter) + extra);
- memset(res, 0, sizeof(iconv_converter) + extra);
+ iconv_converter_t *res = _malloc_r(rptr, sizeof(iconv_converter_t) + extra);
+ memset(res, 0, sizeof(iconv_converter_t) + extra);
if (res) {
res->convert = conv_func;
res->close = close_func;
@@ -58,7 +55,7 @@ _DEFUN(unicode_close, (rptr, data),
_VOID_PTR data)
{
int res;
- unicode_converter *uc = (unicode_converter *)data;
+ unicode_converter_t *uc = (unicode_converter_t *)data;
res = ICONV_CES_CLOSE(rptr, &(uc->from));
res = ICONV_CES_CLOSE(rptr, &(uc->to)) || res;
@@ -75,7 +72,7 @@ _DEFUN(unicode_conv, (rptr, data, inbuf, inbytesleft, outbuf, outbytesleft),
size_t *outbytesleft)
{
size_t res = 0;
- unicode_converter *uc = (unicode_converter *)data;
+ unicode_converter_t *uc = (unicode_converter_t *)data;
if (inbuf == NULL || *inbuf == NULL) {
if (ICONV_CES_CONVERT_FROM_UCS(&(uc->to), UCS_CHAR_NONE,
@@ -130,21 +127,21 @@ _DEFUN(unicode_conv, (rptr, data, inbuf, inbytesleft, outbuf, outbytesleft),
return res;
}
-iconv_converter *
-_DEFUN(iconv_unicode_conv_init, (rptr, to, from),
- struct _reent *rptr _AND
- _CONST char *to _AND
- _CONST char *from)
+iconv_converter_t *
+_DEFUN(_iconv_unicode_conv_init, (rptr, to, from),
+ struct _reent *rptr _AND
+ _CONST char *to _AND
+ _CONST char *from)
{
- unicode_converter *uc;
- iconv_converter *ic = converter_init(rptr, unicode_conv, unicode_close,
- sizeof(unicode_converter));
+ unicode_converter_t *uc;
+ iconv_converter_t *ic = converter_init(rptr, unicode_conv, unicode_close,
+ sizeof(unicode_converter_t));
if (ic == NULL)
return NULL;
- uc = (unicode_converter *)(ic + 1);
- if (!iconv_ces_init(rptr, &(uc->from), from)) {
- if(!iconv_ces_init(rptr, &(uc->to), to))
+ uc = (unicode_converter_t *)(ic + 1);
+ if (!_iconv_ces_init(rptr, &(uc->from), from)) {
+ if(!_iconv_ces_init(rptr, &(uc->to), to))
{
uc->missing = '_';
return ic;
@@ -195,14 +192,12 @@ _DEFUN(null_conv, (rptr, data, inbuf, inbytesleft, outbuf, outbytesleft),
return 0;
}
-iconv_converter *
-_DEFUN(iconv_null_conv_init, (rptr, to, from),
- struct _reent *rptr _AND
- _CONST char *to _AND
- _CONST char *from)
+iconv_converter_t *
+_DEFUN(_iconv_null_conv_init, (rptr, to, from),
+ struct _reent *rptr _AND
+ _CONST char *to _AND
+ _CONST char *from)
{
return converter_init(rptr, null_conv, null_close, 0);
}
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/deps.h b/newlib/libc/iconv/lib/deps.h
index c986211..6edb7c3 100644
--- a/newlib/libc/iconv/lib/deps.h
+++ b/newlib/libc/iconv/lib/deps.h
@@ -23,72 +23,70 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
-#ifdef ENABLE_ICONV
-
#ifndef __ICONV_DEPS_H__
#define __ICONV_DEPS_H__
+#include <newlib.h>
+
/*
* EUC-JP requires us_ascii, jis_x0208_1983, jis_x0201, jis_x0212_1990
*/
-#ifdef ICONV_CONVERTER_EUC_JP
-# ifndef ICONV_CONVERTER_US_ASCII
-# define ICONV_CONVERTER_US_ASCII
+#ifdef _ICONV_CONVERTER_EUC_JP
+# ifndef _ICONV_CONVERTER_US_ASCII
+# define _ICONV_CONVERTER_US_ASCII
# endif
-# ifndef ICONV_CONVERTER_JIS_X0208_1983
-# define ICONV_CONVERTER_JIS_X0208_1983
+# ifndef _ICONV_CONVERTER_JIS_X0208_1983
+# define _ICONV_CONVERTER_JIS_X0208_1983
# endif
-# ifndef ICONV_CONVERTER_JIS_X0201
-# define ICONV_CONVERTER_JIS_X0201
+# ifndef _ICONV_CONVERTER_JIS_X0201
+# define _ICONV_CONVERTER_JIS_X0201
# endif
-# ifndef ICONV_CONVERTER_JIS_X0212_1990
-# define ICONV_CONVERTER_JIS_X0212_1990
+# ifndef _ICONV_CONVERTER_JIS_X0212_1990
+# define _ICONV_CONVERTER_JIS_X0212_1990
# endif
-#endif /* #ifdef ICONV_CONVERTER_EUC_JP */
+#endif /* #ifdef _ICONV_CONVERTER_EUC_JP */
/*
* EUC-KR requires us_ascii, ksx1001
*/
-#ifdef ICONV_CONVERTER_EUC_KR
-# ifndef ICONV_CONVERTER_US_ASCII
-# define ICONV_CONVERTER_US_ASCII
+#ifdef _ICONV_CONVERTER_EUC_KR
+# ifndef _ICONV_CONVERTER_US_ASCII
+# define _ICONV_CONVERTER_US_ASCII
# endif
-# ifndef ICONV_CONVERTER_KSX_1001
-# define ICONV_CONVERTER_KSX_1001
+# ifndef _ICONV_CONVERTER_KSX_1001
+# define _ICONV_CONVERTER_KSX_1001
# endif
-#endif /* #ifdef ICONV_CONVERTER_EUC_KR */
+#endif /* #ifdef _ICONV_CONVERTER_EUC_KR */
/*
* EUC-TW requires us_ascii, cns11643_plane1, cns11643_plane2, cns11643_plane14
*/
-#ifdef ICONV_CONVERTER_EUC_TW
-# ifndef ICONV_CONVERTER_US_ASCII
-# define ICONV_CONVERTER_US_ASCII
+#ifdef _ICONV_CONVERTER_EUC_TW
+# ifndef _ICONV_CONVERTER_US_ASCII
+# define _ICONV_CONVERTER_US_ASCII
# endif
-# ifndef ICONV_CONVERTER_CNS11643_PLANE1
-# define ICONV_CONVERTER_CNS11643_PLANE1
+# ifndef _ICONV_CONVERTER_CNS11643_PLANE1
+# define _ICONV_CONVERTER_CNS11643_PLANE1
# endif
-# ifndef ICONV_CONVERTER_CNS11643_PLANE2
-# define ICONV_CONVERTER_CNS11643_PLANE2
+# ifndef _ICONV_CONVERTER_CNS11643_PLANE2
+# define _ICONV_CONVERTER_CNS11643_PLANE2
# endif
-# ifndef ICONV_CONVERTER_CNS11643_PLANE14
-# define ICONV_CONVERTER_CNS11643_PLANE14
+# ifndef _ICONV_CONVERTER_CNS11643_PLANE14
+# define _ICONV_CONVERTER_CNS11643_PLANE14
# endif
-#endif /* #ifdef ICONV_CONVERTER_EUC_TW */
+#endif /* #ifdef _ICONV_CONVERTER_EUC_TW */
/*
* GB2380 CES requires us_ascii, gb-2312-80 CCS
*/
-#ifdef ICONV_CONVERTER_GB2312
-# ifndef ICONV_CONVERTER_US_ASCII
-# define ICONV_CONVERTER_US_ASCII
+#ifdef _ICONV_CONVERTER_GB2312
+# ifndef _ICONV_CONVERTER_US_ASCII
+# define _ICONV_CONVERTER_US_ASCII
# endif
-# ifndef ICONV_CONVERTER_GB_2312_80
-# define ICONV_CONVERTER_GB_2312_80
+# ifndef _ICONV_CONVERTER_GB_2312_80
+# define _ICONV_CONVERTER_GB_2312_80
# endif
-#endif /* #ifdef ICONV_CONVERTER_GB2312 */
+#endif /* #ifdef _ICONV_CONVERTER_GB2312 */
#endif /* #ifndef __ICONV_DEPS_H__ */
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/endian.h b/newlib/libc/iconv/lib/endian.h
index 097c893..91a23c3 100644
--- a/newlib/libc/iconv/lib/endian.h
+++ b/newlib/libc/iconv/lib/endian.h
@@ -25,10 +25,8 @@
*
* iconv (Charset Conversion Library) v2.0
*/
-#ifdef ENABLE_ICONV
-
-#ifndef _LOCAL_ENDIAN_H_
-#define _LOCAL_ENDIAN_H_
+#ifndef __LOCAL_ENDIAN_H__
+#define __LOCAL_ENDIAN_H__
#include <sys/param.h>
#include <sys/types.h>
@@ -54,7 +52,5 @@
#endif
-#endif /* #ifndef _LOCAL_ENDIAN_H_ */
-
-#endif /* #ifdef ENABLE_ICONV */
+#endif /* #ifndef __LOCAL_ENDIAN_H__ */
diff --git a/newlib/libc/iconv/lib/iconv.c b/newlib/libc/iconv/lib/iconv.c
index 016e273..7127aaa 100644
--- a/newlib/libc/iconv/lib/iconv.c
+++ b/newlib/libc/iconv/lib/iconv.c
@@ -142,9 +142,6 @@ by the Single Unix specification.
No supporting OS subroutine calls are required.
*/
-#ifdef ENABLE_ICONV
-
-#include <_ansi.h>
#include <reent.h>
#include <errno.h>
#include <stdlib.h>
@@ -184,7 +181,7 @@ _DEFUN(_iconv_open_r, (rptr, to, from),
_CONST char *to _AND
_CONST char *from)
{
- iconv_converter *ic;
+ iconv_converter_t *ic;
_CONST char *nlspath;
if(!to || !from)
@@ -204,8 +201,8 @@ _DEFUN(_iconv_open_r, (rptr, to, from),
return (iconv_t)(-1);
}
- ic = strcmp(from, to) ? iconv_unicode_conv_init(rptr, to, from)
- : iconv_null_conv_init(rptr, to, from);
+ ic = strcmp(from, to) ? _iconv_unicode_conv_init(rptr, to, from)
+ : _iconv_null_conv_init(rptr, to, from);
_free_r(rptr, (_VOID_PTR)to);
_free_r(rptr, (_VOID_PTR)from);
return ic ? (iconv_t)(ic) : (iconv_t)(-1);
@@ -229,7 +226,7 @@ _DEFUN(_iconv_r, (rptr, cd, inbuf, inbytesleft, outbuf, outbytesleft),
__errno_r(rptr) = E2BIG;
return (size_t)(-1);
}
- return ((iconv_converter *)cd)->convert(rptr, (iconv_converter *)cd + 1,
+ return ((iconv_converter_t *)cd)->convert(rptr, (iconv_converter_t *)cd + 1,
(_CONST unsigned char**)inbuf,
inbytesleft,
(unsigned char**)outbuf,
@@ -247,11 +244,9 @@ _DEFUN(_iconv_close_r, (rptr, cd),
__errno_r(rptr) = EBADF;
return -1;
}
- res = ((iconv_converter *)cd)->close(rptr, (iconv_converter *)cd + 1);
+ res = ((iconv_converter_t *)cd)->close(rptr, (iconv_converter_t *)cd + 1);
_free_r(rptr, (_VOID_PTR)cd);
return res ? -1 : 0;
}
#endif /* #ifndef _REENT_ONLY */
-#endif /* #ifdef ENABLE_ICONV */
-
diff --git a/newlib/libc/iconv/lib/loaddata.c b/newlib/libc/iconv/lib/loaddata.c
index ca15c32..d5994c9 100644
--- a/newlib/libc/iconv/lib/loaddata.c
+++ b/newlib/libc/iconv/lib/loaddata.c
@@ -23,9 +23,6 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
-#if defined(ENABLE_ICONV)
-
-#include <_ansi.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>
@@ -34,7 +31,7 @@
#include <assert.h>
#include "local.h"
-#ifdef _POSIX_MAPPED_FILES /* Should be defined in unistd.h if mmap()/munmap */
+#ifdef _POSIX_MAPPED_FILES /* Should be defined in unistd.h if mmap/munmap */
#include <sys/mman.h> /* are supported */
#endif
@@ -121,5 +118,3 @@ _DEFUN(_iconv_unload_file, (rptr, desc),
#endif /* #ifdef _POSIX_MAPPED_FILES */
}
-#endif /* #if defined(ENABLE_ICONV) */
-
diff --git a/newlib/libc/iconv/lib/local.h b/newlib/libc/iconv/lib/local.h
index 0069765..199fad0 100644
--- a/newlib/libc/iconv/lib/local.h
+++ b/newlib/libc/iconv/lib/local.h
@@ -58,11 +58,11 @@ _EXFUN(_iconv_unload_file, (struct _reent *, _iconv_fd_t *));
typedef struct {
_CONST char *key;
_CONST _VOID_PTR value;
-} iconv_builtin_table;
+} iconv_builtin_table_t;
-extern _CONST iconv_builtin_table iconv_builtin_ccs[];
-extern _CONST iconv_builtin_table iconv_builtin_ces[];
-extern _CONST char iconv_builtin_aliases[];
+extern _CONST iconv_builtin_table_t _iconv_builtin_ccs[];
+extern _CONST iconv_builtin_table_t _iconv_builtin_ces[];
+extern _CONST char _iconv_builtin_aliases[];
/* Table-driven coded character set (CCS) definitions. */
struct iconv_ccs;
@@ -87,8 +87,8 @@ struct iconv_ccs {
/* CCS initialisation function */
int
-_EXFUN(iconv_ccs_init, (struct _reent *rptr, struct iconv_ccs *ccs,
- _CONST char *name));
+_EXFUN(_iconv_ccs_init, (struct _reent *rptr, struct iconv_ccs *ccs,
+ _CONST char *name));
/* CCS conversion macros */
#define ICONV_CCS_CONVERT_FROM_UCS(ccs, ch) \
@@ -119,7 +119,7 @@ _EXFUN(iconv_ces_convert_from_ucs_t, (struct iconv_ces *data, ucs_t in,
typedef ucs_t
_EXFUN(iconv_ces_convert_to_ucs_t, (struct iconv_ces *data,
_CONST unsigned char **inbuf,
- size_t *inbytesleft));
+ size_t *inbytesleft));
/* CES descriptor structure - CES class data */
struct iconv_ces_desc {
@@ -132,7 +132,7 @@ struct iconv_ces_desc {
};
/* explicit CES class for table (CCS) driven charsets */
-extern _CONST struct iconv_ces_desc iconv_ces_table_driven;
+extern _CONST struct iconv_ces_desc _iconv_ces_table_driven;
/* CES structure - CES instance data */
struct iconv_ces {
@@ -144,7 +144,7 @@ struct iconv_ces {
/* Basic CES functions and macros */
extern int
-_EXFUN(iconv_ces_init, (struct _reent *rptr, struct iconv_ces *ces,
+_EXFUN(_iconv_ces_init, (struct _reent *rptr, struct iconv_ces *ces,
_CONST char *name));
#define ICONV_CES_CLOSE(rptr, ces) ((ces)->close(rptr, ces))
@@ -161,37 +161,37 @@ _EXFUN(iconv_ces_init_int_t, (struct _reent *rptr, _VOID_PTR* /* void ** */,
/* CES subclass macros (for EUC and ISO-2022) */
#define ICONV_CES_DRIVER_DECL(name) \
- iconv_ces_init_int_t iconv_##name##_init; \
- iconv_ces_close_t iconv_##name##_close; \
- iconv_ces_reset_t iconv_##name##_reset; \
- iconv_ces_convert_from_ucs_t iconv_##name##_convert_from_ucs; \
- iconv_ces_convert_to_ucs_t iconv_##name##_convert_to_ucs; \
+ iconv_ces_init_int_t _iconv_##name##_init; \
+ iconv_ces_close_t _iconv_##name##_close; \
+ iconv_ces_reset_t _iconv_##name##_reset; \
+ iconv_ces_convert_from_ucs_t _iconv_##name##_convert_from_ucs; \
+ iconv_ces_convert_to_ucs_t _iconv_##name##_convert_to_ucs; \
/* CES functions and macros for stateless encodings */
-iconv_ces_init_t iconv_ces_init_null;
-iconv_ces_close_t iconv_ces_close_null;
-iconv_ces_reset_t iconv_ces_reset_null;
+iconv_ces_init_t _iconv_ces_init_null;
+iconv_ces_close_t _iconv_ces_close_null;
+iconv_ces_reset_t _iconv_ces_reset_null;
#define ICONV_CES_STATELESS_MODULE_DECL(name) \
- _CONST struct iconv_ces_desc iconv_ces_##name = { \
- iconv_ces_init_null, \
- iconv_ces_close_null, \
- iconv_ces_reset_null, \
+ _CONST struct iconv_ces_desc _iconv_ces_module_##name = { \
+ _iconv_ces_init_null, \
+ _iconv_ces_close_null, \
+ _iconv_ces_reset_null, \
convert_from_ucs, \
convert_to_ucs, \
NULL \
}
/* CES functions and macros for stateful (integer state) encodings */
-iconv_ces_init_t iconv_ces_init_state;
-iconv_ces_close_t iconv_ces_close_state;
-iconv_ces_reset_t iconv_ces_reset_state;
+iconv_ces_init_t _iconv_ces_init_state;
+iconv_ces_close_t _iconv_ces_close_state;
+iconv_ces_reset_t _iconv_ces_reset_state;
#define ICONV_CES_STATEFUL_MODULE_DECL(name) \
- _CONST struct iconv_ces_desc iconv_ces_##name = { \
- iconv_ces_init_state, \
- iconv_ces_close_state, \
- iconv_ces_reset_state, \
+ _CONST struct iconv_ces_desc _iconv_ces_module_##name = { \
+ _iconv_ces_init_state, \
+ _iconv_ces_close_state, \
+ _iconv_ces_reset_state, \
convert_from_ucs, \
convert_to_ucs, \
NULL \
@@ -203,17 +203,17 @@ iconv_ces_reset_t iconv_ces_reset_state;
module_init(struct _reent *rptr, _VOID_PTR *data, /* void ** */ \
_CONST char *cs_name, _CONST _VOID_PTR desc_data) \
{ \
- return iconv_##type##_init(rptr, data, desc_data, \
- sizeof(ccsattr) / \
- sizeof(iconv_ces_##type##_ccs)); \
+ return _iconv_##type##_init(rptr, data, desc_data, \
+ sizeof(ccsattr) / \
+ sizeof(iconv_ces_##type##_ccs_t)); \
} \
\
- _CONST struct iconv_ces_desc iconv_ces_##name = { \
+ _CONST struct iconv_ces_desc _iconv_ces_module_##name = { \
module_init, \
- iconv_##type##_close, \
- iconv_##type##_reset, \
- iconv_##type##_convert_from_ucs, \
- iconv_##type##_convert_to_ucs, \
+ _iconv_##type##_close, \
+ _iconv_##type##_reset, \
+ _iconv_##type##_convert_from_ucs, \
+ _iconv_##type##_convert_to_ucs, \
&ccsattr \
}
@@ -222,10 +222,10 @@ typedef struct {
_CONST char *name;
_CONST char *prefix;
size_t prefixlen;
-} iconv_ces_euc_ccs;
+} iconv_ces_euc_ccs_t;
ICONV_CES_DRIVER_DECL(euc);
-#define iconv_euc_reset iconv_ces_reset_null
+#define _iconv_euc_reset _iconv_ces_reset_null
/* ISO-2022 character encoding schemes and functions. */
enum {ICONV_SHIFT_SI = 0, ICONV_SHIFT_SO, ICONV_SHIFT_SS2, ICONV_SHIFT_SS3};
@@ -235,7 +235,7 @@ typedef struct {
_CONST char *designator;
size_t designatorlen;
int shift;
-} iconv_ces_iso2022_ccs;
+} iconv_ces_iso2022_ccs_t;
ICONV_CES_DRIVER_DECL(iso2022);
@@ -252,24 +252,22 @@ _EXFUN(iconv_close_t, (struct _reent *rptr, _VOID_PTR));
typedef struct {
iconv_conv_t *convert;
iconv_close_t *close;
-}iconv_converter;
-
+}iconv_converter_t;
typedef struct {
struct iconv_ces from;
struct iconv_ces to;
ucs_t missing;
-} unicode_converter;
-
+} unicode_converter_t;
/* Converter initialisers */
-iconv_converter *
-_EXFUN(iconv_unicode_conv_init, (struct _reent *rptr, _CONST char *to,
- _CONST char *from));
+iconv_converter_t *
+_EXFUN(_iconv_unicode_conv_init, (struct _reent *rptr, _CONST char *to,
+ _CONST char *from));
-iconv_converter *
-_EXFUN(iconv_null_conv_init, (struct _reent *rptr, _CONST char *to,
- _CONST char *from));
+iconv_converter_t *
+_EXFUN(_iconv_null_conv_init, (struct _reent *rptr, _CONST char *to,
+ _CONST char *from));
#endif /* __LOCAL_H__ */
diff --git a/newlib/libc/locale/Makefile.in b/newlib/libc/locale/Makefile.in
index f99f7a3..c1e8480 100644
--- a/newlib/libc/locale/Makefile.in
+++ b/newlib/libc/locale/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/misc/Makefile.in b/newlib/libc/misc/Makefile.in
index 33d7ad4..72376f7 100644
--- a/newlib/libc/misc/Makefile.in
+++ b/newlib/libc/misc/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/posix/Makefile.in b/newlib/libc/posix/Makefile.in
index e87e01f..8867573 100644
--- a/newlib/libc/posix/Makefile.in
+++ b/newlib/libc/posix/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/reent/Makefile.in b/newlib/libc/reent/Makefile.in
index a315e41..ab087bc 100644
--- a/newlib/libc/reent/Makefile.in
+++ b/newlib/libc/reent/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/search/Makefile.in b/newlib/libc/search/Makefile.in
index 9ff2532..eff92d4 100644
--- a/newlib/libc/search/Makefile.in
+++ b/newlib/libc/search/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/signal/Makefile.in b/newlib/libc/signal/Makefile.in
index cac4f5a..badc21c 100644
--- a/newlib/libc/signal/Makefile.in
+++ b/newlib/libc/signal/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/stdio/Makefile.in b/newlib/libc/stdio/Makefile.in
index 4741e26..c876b93 100644
--- a/newlib/libc/stdio/Makefile.in
+++ b/newlib/libc/stdio/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/stdio64/Makefile.in b/newlib/libc/stdio64/Makefile.in
index 056fb98..a70c3ef 100644
--- a/newlib/libc/stdio64/Makefile.in
+++ b/newlib/libc/stdio64/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/stdlib/Makefile.in b/newlib/libc/stdlib/Makefile.in
index 8aa7a70..dee3e7b 100644
--- a/newlib/libc/stdlib/Makefile.in
+++ b/newlib/libc/stdlib/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/string/Makefile.in b/newlib/libc/string/Makefile.in
index f6ffc77..9c218b0 100644
--- a/newlib/libc/string/Makefile.in
+++ b/newlib/libc/string/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/syscalls/Makefile.in b/newlib/libc/syscalls/Makefile.in
index 28304b5..e95d425 100644
--- a/newlib/libc/syscalls/Makefile.in
+++ b/newlib/libc/syscalls/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/time/Makefile.in b/newlib/libc/time/Makefile.in
index 049bade..20ad1f0 100644
--- a/newlib/libc/time/Makefile.in
+++ b/newlib/libc/time/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/libc/unix/Makefile.in b/newlib/libc/unix/Makefile.in
index 02a9fc3..cdc056b 100644
--- a/newlib/libc/unix/Makefile.in
+++ b/newlib/libc/unix/Makefile.in
@@ -92,7 +92,6 @@ LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NEWLIB_ICONV_CFLAGS = @NEWLIB_ICONV_CFLAGS@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
diff --git a/newlib/testsuite/newlib.iconv/iconv.exp b/newlib/testsuite/newlib.iconv/iconv.exp
new file mode 100644
index 0000000..317fe7e
--- /dev/null
+++ b/newlib/testsuite/newlib.iconv/iconv.exp
@@ -0,0 +1,32 @@
+#
+# Copyright (c) 2003, Artem B. Bityuckiy, SoftMine Corporation.
+# Rights transferred to Franklin Electronic Publishers.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+#
+load_lib passfail.exp
+
+set exclude_list {
+}
+
+newlib_pass_fail_all -x $exclude_list
+
diff --git a/newlib/testsuite/newlib.iconv/iconvjp.c b/newlib/testsuite/newlib.iconv/iconvjp.c
new file mode 100644
index 0000000..2022851
--- /dev/null
+++ b/newlib/testsuite/newlib.iconv/iconvjp.c
@@ -0,0 +1,979 @@
+/*
+ * Copyright (c) 2003, Artem B. Bityuckiy, SoftMine Corporation.
+ * Rights transferred to Franklin Electronic Publishers.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#include <stdio.h>
+#include <iconv.h>
+#include <errno.h>
+#include <newlib.h>
+#include "check.h"
+
+#ifdef _ICONV_ENABLED
+
+#if defined(_ICONV_CONVERTER_UTF_8) || \
+ defined(_ICONV_CONVERTER_EUC_JP) || \
+ defined(_ICONV_CONVERTER_SHIFT_JIS) || \
+ defined(_ICONV_CONVERTER_UCS_2_INTERNAL)
+
+#ifdef _ICONV_CONVERTER_UTF_8
+char utf8[] =
+{
+ 0xe8,0x89,0xb2,0xe3,0x80,0x85,0xe3,0x83,0x86,0xe3,
+ 0x82,0xad,0xe3,0x82,0xb9,0xe3,0x83,0x88,0xe3,0x83,
+ 0x95,0xe3,0x82,0xa1,0xe3,0x82,0xa4,0xe3,0x83,0xab,
+ 0xe9,0x9b,0x86,0x20,0x56,0x65,0x72,0x33,0x2e,0x33,
+ 0x20,0x28,0x43,0x29,0x48,0x41,0x54,0x0d,0x0a,0x0d,
+ 0x0a,0xe3,0x81,0x93,0xe3,0x81,0xae,0xe3,0x82,0xa2,
+ 0xe3,0x83,0xbc,0xe3,0x82,0xab,0xe3,0x82,0xa4,0xe3,
+ 0x83,0x96,0xe3,0x81,0xae,0xe6,0x9c,0x80,0xe6,0x96,
+ 0xb0,0xe7,0x89,0x88,0xe3,0x81,0xaf,0xe3,0x81,0x93,
+ 0xe3,0x81,0x93,0xe3,0x81,0xab,0xe3,0x81,0x82,0xe3,
+ 0x82,0x8a,0xe3,0x81,0xbe,0xe3,0x81,0x99,0xe3,0x80,
+ 0x82,0x0d,0x0a,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,
+ 0x77,0x77,0x77,0x30,0x32,0x2e,0x73,0x6f,0x2d,0x6e,
+ 0x65,0x74,0x2e,0x6e,0x65,0x2e,0x6a,0x70,0x2f,0x25,
+ 0x37,0x45,0x68,0x61,0x74,0x2f,0x66,0x69,0x6c,0x65,
+ 0x73,0x2f,0x69,0x6e,0x64,0x65,0x78,0x2d,0x6a,0x2e,
+ 0x68,0x74,0x6d,0x6c,0x0d,0x0a,0x0d,0x0a,0x63,0x72,
+ 0x2c,0x20,0x63,0x72,0x6c,0x66,0x2c,0x20,0x6c,0x66,
+ 0xe3,0x83,0x87,0xe3,0x82,0xa3,0xe3,0x83,0xac,0xe3,
+ 0x82,0xaf,0xe3,0x83,0x88,0xe3,0x83,0xaa,0x28,0xe3,
+ 0x83,0x95,0xe3,0x82,0xa9,0xe3,0x83,0xab,0xe3,0x83,
+ 0x80,0x29,0xe3,0x81,0xae,0xe5,0x86,0x85,0xe5,0xae,
+ 0xb9,0xe3,0x81,0xaf,0xe5,0x90,0x8c,0xe3,0x81,0x98,
+ 0xe3,0x81,0xa7,0xe3,0x81,0x99,0xe3,0x81,0x8c,0xe3,
+ 0x80,0x81,0xe8,0xa1,0x8c,0xe3,0x81,0xae,0xe5,0x8c,
+ 0xba,0xe5,0x88,0x87,0xe3,0x82,0x8a,0xe3,0x81,0x8c,
+ 0xe3,0x81,0x9d,0xe3,0x82,0x8c,0xe3,0x81,0x9e,0xe3,
+ 0x82,0x8c,0x0d,0x0a,0x43,0x52,0x28,0x4d,0x61,0x63,
+ 0xe9,0xa2,0xa8,0x29,0xe3,0x80,0x81,0x43,0x52,0x2b,
+ 0x4c,0x46,0x28,0x44,0x4f,0x53,0xe9,0xa2,0xa8,0x29,
+ 0xe3,0x80,0x81,0x4c,0x46,0x28,0x55,0x4e,0x49,0x58,
+ 0xe9,0xa2,0xa8,0x29,0xe3,0x81,0xab,0xe3,0x81,0xaa,
+ 0xe3,0x81,0xa3,0xe3,0x81,0xa6,0xe3,0x81,0x84,0xe3,
+ 0x81,0xbe,0xe3,0x81,0x99,0xe3,0x80,0x82,0x0d,0x0a,
+ 0x0d,0x0a,0x0d,0x0a,0x6a,0x74,0x65,0x78,0x74,0x2f,
+ 0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x72,0x65,0x61,0x64,
+ 0x6d,0x65,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,
+ 0x20,0xe8,0x8b,0xb1,0xe8,0xaa,0x9e,0x52,0x45,0x41,
+ 0x44,0x4d,0x45,0x20,0x20,0x20,0x20,0x20,0x28,0x41,
+ 0x53,0x43,0x49,0x49,0x29,0x0d,0x0a,0x20,0x20,0x72,
+ 0x65,0x61,0x64,0x6d,0x65,0x2e,0x65,0x75,0x63,0x20,
+ 0x2d,0x2d,0x2d,0x20,0xe3,0x81,0x93,0xe3,0x81,0xae,
+ 0xe3,0x83,0x95,0xe3,0x82,0xa1,0xe3,0x82,0xa4,0xe3,
+ 0x83,0xab,0x20,0x20,0x20,0x28,0x45,0x55,0x43,0x2d,
+ 0x4a,0x50,0x29,0x0d,0x0a,0x20,0x20,0x72,0x65,0x61,
+ 0x64,0x6d,0x65,0x2e,0x6a,0x69,0x73,0x20,0x2d,0x2d,
+ 0x2d,0x20,0xe6,0x97,0xa5,0xe6,0x9c,0xac,0xe8,0xaa,
+ 0x9e,0x52,0x45,0x41,0x44,0x4d,0x45,0x20,0x20,0x20,
+ 0x28,0x4a,0x49,0x53,0x29,0x0d,0x0a,0x20,0x20,0x72,
+ 0x65,0x61,0x64,0x6d,0x65,0x2e,0x73,0x6a,0x73,0x20,
+ 0x2d,0x2d,0x2d,0x20,0xe6,0x97,0xa5,0xe6,0x9c,0xac,
+ 0xe8,0xaa,0x9e,0x52,0x45,0x41,0x44,0x4d,0x45,0x20,
+ 0x20,0x20,0x28,0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,
+ 0x49,0x53,0x29,0x0d,0x0a,0x0d,0x0a,0x6a,0x74,0x65,
+ 0x78,0x74,0x2f,0x63,0x72,0x2f,0x0d,0x0a,0x6a,0x74,
+ 0x65,0x78,0x74,0x2f,0x63,0x72,0x6c,0x66,0x2f,0x0d,
+ 0x0a,0x6a,0x74,0x65,0x78,0x74,0x2f,0x6c,0x66,0x2f,
+ 0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x61,0x73,0x63,0x69,
+ 0x69,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,0x2d,
+ 0x20,0x41,0x53,0x43,0x49,0x49,0xe3,0x81,0xa7,0xe6,
+ 0x9b,0xb8,0xe3,0x81,0x84,0xe3,0x81,0x9f,0xe6,0x97,
+ 0xa5,0xe6,0x9c,0xac,0xe8,0xaa,0x9e,0x28,0xe3,0x83,
+ 0xad,0xe3,0x83,0xbc,0xe3,0x83,0x9e,0xe5,0xad,0x97,
+ 0x29,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x6a,0x30,0x32,
+ 0x30,0x31,0x2d,0x38,0x62,0x2e,0x74,0x78,0x74,0x20,
+ 0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,0x30,
+ 0x31,0xe3,0x81,0xae,0xe7,0x89,0x87,0xe4,0xbb,0xae,
+ 0xe5,0x90,0x8d,0x20,0xe3,0x82,0x92,0x20,0x38,0xe5,
+ 0x8d,0x98,0xe4,0xbd,0x8d,0xe7,0xac,0xa6,0xe5,0x8f,
+ 0xb7,0xe5,0x8c,0x96,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,0x49,0x53,
+ 0xe3,0x81,0xa8,0xe5,0x90,0x8c,0xe3,0x81,0x98,0x0d,
+ 0x0a,0x20,0x20,0x6a,0x30,0x32,0x30,0x31,0x2d,0x65,
+ 0x73,0x2e,0x74,0x78,0x74,0x20,0x2d,0x20,0x4a,0x49,
+ 0x53,0x20,0x58,0x30,0x32,0x30,0x31,0xe3,0x81,0xae,
+ 0xe7,0x89,0x87,0xe4,0xbb,0xae,0xe5,0x90,0x8d,0x20,
+ 0xe3,0x82,0x92,0x20,0x45,0x53,0x43,0x28,0x49,0xe3,
+ 0x81,0xa7,0xe7,0xac,0xa6,0xe5,0x8f,0xb7,0xe5,0x8c,
+ 0x96,0x0d,0x0a,0x20,0x20,0x6a,0x30,0x32,0x30,0x31,
+ 0x2d,0x73,0x6f,0x2e,0x74,0x78,0x74,0x20,0x2d,0x20,
+ 0x4a,0x49,0x53,0x20,0x58,0x30,0x32,0x30,0x31,0xe3,
+ 0x81,0xae,0xe7,0x89,0x87,0xe4,0xbb,0xae,0xe5,0x90,
+ 0x8d,0x20,0xe3,0x82,0x92,0x20,0x53,0x4f,0x2f,0x53,
+ 0x49,0xe3,0x81,0xa7,0xe7,0xac,0xa6,0xe5,0x8f,0xb7,
+ 0xe5,0x8c,0x96,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x6a,
+ 0x30,0x32,0x30,0x38,0x2d,0x38,0x62,0x2e,0x74,0x78,
+ 0x74,0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,
+ 0x32,0x30,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0xe3,0x82,0x92,0x20,0x38,0xe5,0x8d,0x98,
+ 0xe4,0xbd,0x8d,0xe7,0xac,0xa6,0xe5,0x8f,0xb7,0xe5,
+ 0x8c,0x96,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x45,
+ 0x55,0x43,0x2d,0x4a,0x50,0xe3,0x81,0xa8,0xe5,0x90,
+ 0x8c,0xe3,0x81,0x98,0x0d,0x0a,0x20,0x20,0x6a,0x30,
+ 0x32,0x30,0x38,0x2d,0x37,0x38,0x2e,0x74,0x78,0x74,
+ 0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,
+ 0x30,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0xe3,0x82,0x92,0x20,0x45,0x53,0x43,0x24,0x40,
+ 0xe3,0x81,0xa7,0xe7,0xac,0xa6,0xe5,0x8f,0xb7,0xe5,
+ 0x8c,0x96,0x20,0x20,0x20,0x20,0x20,0xe3,0x81,0x84,
+ 0xe3,0x82,0x8f,0xe3,0x82,0x86,0xe3,0x82,0x8b,0xe6,
+ 0x97,0xa7,0x4a,0x49,0x53,0x0d,0x0a,0x20,0x20,0x6a,
+ 0x30,0x32,0x30,0x38,0x2d,0x38,0x33,0x2e,0x74,0x78,
+ 0x74,0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,
+ 0x32,0x30,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0xe3,0x82,0x92,0x20,0x45,0x53,0x43,0x24,
+ 0x42,0xe3,0x81,0xa7,0xe7,0xac,0xa6,0xe5,0x8f,0xb7,
+ 0xe5,0x8c,0x96,0x20,0x20,0x20,0x20,0x20,0xe3,0x81,
+ 0x84,0xe3,0x82,0x8f,0xe3,0x82,0x86,0xe3,0x82,0x8b,
+ 0xe6,0x96,0xb0,0x4a,0x49,0x53,0x0d,0x0a,0x0d,0x0a,
+ 0x20,0x20,0x65,0x30,0x32,0x30,0x31,0x2e,0x74,0x78,
+ 0x74,0x20,0x2d,0x2d,0x2d,0x2d,0x20,0x4a,0x49,0x53,
+ 0x20,0x58,0x30,0x32,0x30,0x31,0xe3,0x81,0xae,0xe7,
+ 0x89,0x87,0xe4,0xbb,0xae,0xe5,0x90,0x8d,0x20,0xe3,
+ 0x82,0x92,0x20,0x45,0x55,0x43,0x2d,0x4a,0x50,0xe3,
+ 0x81,0xa7,0xe7,0xac,0xa6,0xe5,0x8f,0xb7,0xe5,0x8c,
+ 0x96,0x0d,0x0a,0x20,0x20,0x65,0x30,0x32,0x30,0x38,
+ 0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,0x2d,0x20,
+ 0x4a,0x49,0x53,0x20,0x58,0x30,0x32,0x30,0x38,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xe3,0x82,
+ 0x92,0x20,0x45,0x55,0x43,0x2d,0x4a,0x50,0xe3,0x81,
+ 0xa7,0xe7,0xac,0xa6,0xe5,0x8f,0xb7,0xe5,0x8c,0x96,
+ 0x20,0x20,0x20,0x20,0x38,0xe3,0x83,0x93,0xe3,0x83,
+ 0x83,0xe3,0x83,0x88,0x4a,0x49,0x53,0x58,0x30,0x32,
+ 0x30,0x38,0xe3,0x81,0xa8,0xe5,0x90,0x8c,0xe3,0x81,
+ 0x98,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x73,0x30,0x32,
+ 0x30,0x31,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,
+ 0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,0x30,
+ 0x31,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0xe3,0x82,0x92,0x20,0x53,0x68,0x69,0x66,0x74,0x5f,
+ 0x4a,0x49,0x53,0xe3,0x81,0xa7,0xe7,0xac,0xa6,0xe5,
+ 0x8f,0xb7,0xe5,0x8c,0x96,0x20,0x38,0xe3,0x83,0x93,
+ 0xe3,0x83,0x83,0xe3,0x83,0x88,0x4a,0x49,0x53,0x58,
+ 0x30,0x32,0x30,0x31,0xe3,0x81,0xa8,0xe5,0x90,0x8c,
+ 0xe3,0x81,0x98,0x0d,0x0a,0x20,0x20,0x73,0x30,0x32,
+ 0x30,0x38,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,
+ 0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,0x30,
+ 0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0xe3,0x82,0x92,0x20,0x53,0x68,0x69,0x66,0x74,0x5f,
+ 0x4a,0x49,0x53,0xe3,0x81,0xa7,0xe7,0xac,0xa6,0xe5,
+ 0x8f,0xb7,0xe5,0x8c,0x96,0x0d,0x0a,0x0d,0x0a,0x6a,
+ 0x74,0x65,0x78,0x74,0x2f,0x6f,0x74,0x68,0x65,0x72,
+ 0x73,0x2f,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x62,0x36,
+ 0x34,0x6a,0x69,0x73,0x2e,0x74,0x78,0x74,0x20,0x2d,
+ 0x2d,0x2d,0x20,0x49,0x53,0x4f,0x2d,0x32,0x30,0x32,
+ 0x32,0x2d,0x4a,0x50,0x20,0x28,0x4a,0x49,0x53,0x29,
+ 0x20,0xe3,0x82,0x92,0x20,0x62,0x61,0x73,0x65,0x36,
+ 0x34,0xe3,0x81,0xa7,0xe7,0xac,0xa6,0xe5,0x8f,0xb7,
+ 0xe5,0x8c,0x96,0x0d,0x0a,0x20,0x20,0x71,0x74,0x6a,
+ 0x69,0x73,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,
+ 0x2d,0x20,0x49,0x53,0x4f,0x2d,0x32,0x30,0x32,0x32,
+ 0x2d,0x4a,0x50,0x20,0x28,0x4a,0x49,0x53,0x29,0x20,
+ 0xe3,0x82,0x92,0x20,0x71,0x75,0x6f,0x74,0x65,0x64,
+ 0x2d,0x70,0x72,0x69,0x6e,0x74,0x61,0x62,0x6c,0x65,
+ 0xe3,0x81,0xa7,0xe7,0xac,0xa6,0xe5,0x8f,0xb7,0xe5,
+ 0x8c,0x96,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x62,0x6b,
+ 0x65,0x75,0x63,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,
+ 0x2d,0x2d,0x20,0xe5,0xa3,0x8a,0xe3,0x82,0x8c,0xe3,
+ 0x81,0x9f,0x45,0x55,0x43,0x2d,0x4a,0x50,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0xe5,0x85,0x88,0xe9,0xa0,0xad,
+ 0xe3,0x83,0x93,0xe3,0x83,0x83,0xe3,0x83,0x88,0xe3,
+ 0x81,0x8c,0xe3,0x82,0xbc,0xe3,0x83,0xad,0x0d,0x0a,
+ 0x20,0x20,0x62,0x6b,0x6a,0x69,0x73,0x2e,0x74,0x78,
+ 0x74,0x20,0x2d,0x2d,0x2d,0x2d,0x20,0xe5,0xa3,0x8a,
+ 0xe3,0x82,0x8c,0xe3,0x81,0x9f,0x4a,0x49,0x53,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x45,0x53,
+ 0x43,0xe3,0x82,0xb3,0xe3,0x83,0xbc,0xe3,0x83,0x89,
+ 0xe3,0x81,0x8c,0xe6,0xac,0xa0,0xe3,0x81,0x91,0xe3,
+ 0x81,0x9f,0x0d,0x0a,0x20,0x20,0x62,0x6b,0x73,0x6a,
+ 0x69,0x73,0x2e,0x74,0x78,0x74,0x2d,0x2d,0x2d,0x2d,
+ 0x20,0xe5,0xa3,0x8a,0xe3,0x82,0x8c,0xe3,0x81,0x9f,
+ 0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,0x49,0x53,0x20,
+ 0x20,0x20,0xe5,0x85,0x88,0xe9,0xa0,0xad,0xe3,0x83,
+ 0x93,0xe3,0x83,0x83,0xe3,0x83,0x88,0xe3,0x81,0x8c,
+ 0xe3,0x82,0xbc,0xe3,0x83,0xad,0x0d,0x0a,0x0d,0x0a,
+ 0x20,0x20,0x63,0x74,0x72,0x6c,0x5f,0x7a,0x2e,0x74,
+ 0x78,0x74,0x20,0x20,0x20,0x20,0x20,0x53,0x68,0x69,
+ 0x66,0x74,0x5f,0x4a,0x49,0x53,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x5e,0x5a,0xe3,0x82,0xad,0xe3,0x83,0xa3,
+ 0xe3,0x83,0xa9,0xe3,0x82,0xaf,0xe3,0x82,0xbf,0xe4,
+ 0xbb,0x98,0xe3,0x81,0x8d,0x20,0x20,0x20,0x28,0x44,
+ 0x4f,0x53,0xe9,0xa2,0xa8,0x29,0x0d,0x0a,0x20,0x20,
+ 0x6d,0x61,0x63,0x74,0x78,0x74,0x2e,0x62,0x69,0x6e,
+ 0x20,0x20,0x20,0x20,0x20,0xe3,0x83,0x9e,0xe3,0x83,
+ 0x83,0xe3,0x82,0xaf,0xe3,0x83,0x90,0xe3,0x82,0xa4,
+ 0xe3,0x83,0x8a,0xe3,0x83,0xaa,0x49,0x49,0xe3,0x83,
+ 0x95,0xe3,0x82,0xa9,0xe3,0x83,0xbc,0xe3,0x83,0x9e,
+ 0xe3,0x83,0x83,0xe3,0x83,0x88,0x0d,0xa
+ };
+#endif /* ifdef _ICONV_CONVERTER_UTF_8 */
+
+#ifdef _ICONV_CONVERTER_EUC_JP
+ char euc_jp[] =
+ {
+ 0xbf,0xa7,0xa1,0xb9,0xa5,0xc6,0xa5,0xad,0xa5,0xb9,
+ 0xa5,0xc8,0xa5,0xd5,0xa5,0xa1,0xa5,0xa4,0xa5,0xeb,
+ 0xbd,0xb8,0x20,0x56,0x65,0x72,0x33,0x2e,0x33,0x20,
+ 0x28,0x43,0x29,0x48,0x41,0x54,0x0d,0x0a,0x0d,0x0a,
+ 0xa4,0xb3,0xa4,0xce,0xa5,0xa2,0xa1,0xbc,0xa5,0xab,
+ 0xa5,0xa4,0xa5,0xd6,0xa4,0xce,0xba,0xc7,0xbf,0xb7,
+ 0xc8,0xc7,0xa4,0xcf,0xa4,0xb3,0xa4,0xb3,0xa4,0xcb,
+ 0xa4,0xa2,0xa4,0xea,0xa4,0xde,0xa4,0xb9,0xa1,0xa3,
+ 0x0d,0x0a,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,
+ 0x77,0x77,0x30,0x32,0x2e,0x73,0x6f,0x2d,0x6e,0x65,
+ 0x74,0x2e,0x6e,0x65,0x2e,0x6a,0x70,0x2f,0x25,0x37,
+ 0x45,0x68,0x61,0x74,0x2f,0x66,0x69,0x6c,0x65,0x73,
+ 0x2f,0x69,0x6e,0x64,0x65,0x78,0x2d,0x6a,0x2e,0x68,
+ 0x74,0x6d,0x6c,0x0d,0x0a,0x0d,0x0a,0x63,0x72,0x2c,
+ 0x20,0x63,0x72,0x6c,0x66,0x2c,0x20,0x6c,0x66,0xa5,
+ 0xc7,0xa5,0xa3,0xa5,0xec,0xa5,0xaf,0xa5,0xc8,0xa5,
+ 0xea,0x28,0xa5,0xd5,0xa5,0xa9,0xa5,0xeb,0xa5,0xc0,
+ 0x29,0xa4,0xce,0xc6,0xe2,0xcd,0xc6,0xa4,0xcf,0xc6,
+ 0xb1,0xa4,0xb8,0xa4,0xc7,0xa4,0xb9,0xa4,0xac,0xa1,
+ 0xa2,0xb9,0xd4,0xa4,0xce,0xb6,0xe8,0xc0,0xda,0xa4,
+ 0xea,0xa4,0xac,0xa4,0xbd,0xa4,0xec,0xa4,0xbe,0xa4,
+ 0xec,0x0d,0x0a,0x43,0x52,0x28,0x4d,0x61,0x63,0xc9,
+ 0xf7,0x29,0xa1,0xa2,0x43,0x52,0x2b,0x4c,0x46,0x28,
+ 0x44,0x4f,0x53,0xc9,0xf7,0x29,0xa1,0xa2,0x4c,0x46,
+ 0x28,0x55,0x4e,0x49,0x58,0xc9,0xf7,0x29,0xa4,0xcb,
+ 0xa4,0xca,0xa4,0xc3,0xa4,0xc6,0xa4,0xa4,0xa4,0xde,
+ 0xa4,0xb9,0xa1,0xa3,0x0d,0x0a,0x0d,0x0a,0x0d,0x0a,
+ 0x6a,0x74,0x65,0x78,0x74,0x2f,0x0d,0x0a,0x0d,0x0a,
+ 0x20,0x20,0x72,0x65,0x61,0x64,0x6d,0x65,0x2e,0x74,
+ 0x78,0x74,0x20,0x2d,0x2d,0x2d,0x20,0xb1,0xd1,0xb8,
+ 0xec,0x52,0x45,0x41,0x44,0x4d,0x45,0x20,0x20,0x20,
+ 0x20,0x20,0x28,0x41,0x53,0x43,0x49,0x49,0x29,0x0d,
+ 0x0a,0x20,0x20,0x72,0x65,0x61,0x64,0x6d,0x65,0x2e,
+ 0x65,0x75,0x63,0x20,0x2d,0x2d,0x2d,0x20,0xa4,0xb3,
+ 0xa4,0xce,0xa5,0xd5,0xa5,0xa1,0xa5,0xa4,0xa5,0xeb,
+ 0x20,0x20,0x20,0x28,0x45,0x55,0x43,0x2d,0x4a,0x50,
+ 0x29,0x0d,0x0a,0x20,0x20,0x72,0x65,0x61,0x64,0x6d,
+ 0x65,0x2e,0x6a,0x69,0x73,0x20,0x2d,0x2d,0x2d,0x20,
+ 0xc6,0xfc,0xcb,0xdc,0xb8,0xec,0x52,0x45,0x41,0x44,
+ 0x4d,0x45,0x20,0x20,0x20,0x28,0x4a,0x49,0x53,0x29,
+ 0x0d,0x0a,0x20,0x20,0x72,0x65,0x61,0x64,0x6d,0x65,
+ 0x2e,0x73,0x6a,0x73,0x20,0x2d,0x2d,0x2d,0x20,0xc6,
+ 0xfc,0xcb,0xdc,0xb8,0xec,0x52,0x45,0x41,0x44,0x4d,
+ 0x45,0x20,0x20,0x20,0x28,0x53,0x68,0x69,0x66,0x74,
+ 0x5f,0x4a,0x49,0x53,0x29,0x0d,0x0a,0x0d,0x0a,0x6a,
+ 0x74,0x65,0x78,0x74,0x2f,0x63,0x72,0x2f,0x0d,0x0a,
+ 0x6a,0x74,0x65,0x78,0x74,0x2f,0x63,0x72,0x6c,0x66,
+ 0x2f,0x0d,0x0a,0x6a,0x74,0x65,0x78,0x74,0x2f,0x6c,
+ 0x66,0x2f,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x61,0x73,
+ 0x63,0x69,0x69,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,
+ 0x2d,0x2d,0x20,0x41,0x53,0x43,0x49,0x49,0xa4,0xc7,
+ 0xbd,0xf1,0xa4,0xa4,0xa4,0xbf,0xc6,0xfc,0xcb,0xdc,
+ 0xb8,0xec,0x28,0xa5,0xed,0xa1,0xbc,0xa5,0xde,0xbb,
+ 0xfa,0x29,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x6a,0x30,
+ 0x32,0x30,0x31,0x2d,0x38,0x62,0x2e,0x74,0x78,0x74,
+ 0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,
+ 0x30,0x31,0xa4,0xce,0xca,0xd2,0xb2,0xbe,0xcc,0xbe,
+ 0x20,0xa4,0xf2,0x20,0x38,0xc3,0xb1,0xb0,0xcc,0xc9,
+ 0xe4,0xb9,0xe6,0xb2,0xbd,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,0x49,
+ 0x53,0xa4,0xc8,0xc6,0xb1,0xa4,0xb8,0x0d,0x0a,0x20,
+ 0x20,0x6a,0x30,0x32,0x30,0x31,0x2d,0x65,0x73,0x2e,
+ 0x74,0x78,0x74,0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,
+ 0x58,0x30,0x32,0x30,0x31,0xa4,0xce,0xca,0xd2,0xb2,
+ 0xbe,0xcc,0xbe,0x20,0xa4,0xf2,0x20,0x45,0x53,0x43,
+ 0x28,0x49,0xa4,0xc7,0xc9,0xe4,0xb9,0xe6,0xb2,0xbd,
+ 0x0d,0x0a,0x20,0x20,0x6a,0x30,0x32,0x30,0x31,0x2d,
+ 0x73,0x6f,0x2e,0x74,0x78,0x74,0x20,0x2d,0x20,0x4a,
+ 0x49,0x53,0x20,0x58,0x30,0x32,0x30,0x31,0xa4,0xce,
+ 0xca,0xd2,0xb2,0xbe,0xcc,0xbe,0x20,0xa4,0xf2,0x20,
+ 0x53,0x4f,0x2f,0x53,0x49,0xa4,0xc7,0xc9,0xe4,0xb9,
+ 0xe6,0xb2,0xbd,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x6a,
+ 0x30,0x32,0x30,0x38,0x2d,0x38,0x62,0x2e,0x74,0x78,
+ 0x74,0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,
+ 0x32,0x30,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0xa4,0xf2,0x20,0x38,0xc3,0xb1,0xb0,0xcc,
+ 0xc9,0xe4,0xb9,0xe6,0xb2,0xbd,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x45,0x55,0x43,0x2d,0x4a,0x50,0xa4,
+ 0xc8,0xc6,0xb1,0xa4,0xb8,0x0d,0x0a,0x20,0x20,0x6a,
+ 0x30,0x32,0x30,0x38,0x2d,0x37,0x38,0x2e,0x74,0x78,
+ 0x74,0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,
+ 0x32,0x30,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0xa4,0xf2,0x20,0x45,0x53,0x43,0x24,0x40,
+ 0xa4,0xc7,0xc9,0xe4,0xb9,0xe6,0xb2,0xbd,0x20,0x20,
+ 0x20,0x20,0x20,0xa4,0xa4,0xa4,0xef,0xa4,0xe6,0xa4,
+ 0xeb,0xb5,0xec,0x4a,0x49,0x53,0x0d,0x0a,0x20,0x20,
+ 0x6a,0x30,0x32,0x30,0x38,0x2d,0x38,0x33,0x2e,0x74,
+ 0x78,0x74,0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,
+ 0x30,0x32,0x30,0x38,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0xa4,0xf2,0x20,0x45,0x53,0x43,0x24,
+ 0x42,0xa4,0xc7,0xc9,0xe4,0xb9,0xe6,0xb2,0xbd,0x20,
+ 0x20,0x20,0x20,0x20,0xa4,0xa4,0xa4,0xef,0xa4,0xe6,
+ 0xa4,0xeb,0xbf,0xb7,0x4a,0x49,0x53,0x0d,0x0a,0x0d,
+ 0x0a,0x20,0x20,0x65,0x30,0x32,0x30,0x31,0x2e,0x74,
+ 0x78,0x74,0x20,0x2d,0x2d,0x2d,0x2d,0x20,0x4a,0x49,
+ 0x53,0x20,0x58,0x30,0x32,0x30,0x31,0xa4,0xce,0xca,
+ 0xd2,0xb2,0xbe,0xcc,0xbe,0x20,0xa4,0xf2,0x20,0x45,
+ 0x55,0x43,0x2d,0x4a,0x50,0xa4,0xc7,0xc9,0xe4,0xb9,
+ 0xe6,0xb2,0xbd,0x0d,0x0a,0x20,0x20,0x65,0x30,0x32,
+ 0x30,0x38,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,
+ 0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,0x30,
+ 0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0xa4,0xf2,0x20,0x45,0x55,0x43,0x2d,0x4a,0x50,0xa4,
+ 0xc7,0xc9,0xe4,0xb9,0xe6,0xb2,0xbd,0x20,0x20,0x20,
+ 0x20,0x38,0xa5,0xd3,0xa5,0xc3,0xa5,0xc8,0x4a,0x49,
+ 0x53,0x58,0x30,0x32,0x30,0x38,0xa4,0xc8,0xc6,0xb1,
+ 0xa4,0xb8,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x73,0x30,
+ 0x32,0x30,0x31,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,
+ 0x2d,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,
+ 0x30,0x31,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0xa4,0xf2,0x20,0x53,0x68,0x69,0x66,0x74,0x5f,
+ 0x4a,0x49,0x53,0xa4,0xc7,0xc9,0xe4,0xb9,0xe6,0xb2,
+ 0xbd,0x20,0x38,0xa5,0xd3,0xa5,0xc3,0xa5,0xc8,0x4a,
+ 0x49,0x53,0x58,0x30,0x32,0x30,0x31,0xa4,0xc8,0xc6,
+ 0xb1,0xa4,0xb8,0x0d,0x0a,0x20,0x20,0x73,0x30,0x32,
+ 0x30,0x38,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,
+ 0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,0x30,
+ 0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0xa4,0xf2,0x20,0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,
+ 0x49,0x53,0xa4,0xc7,0xc9,0xe4,0xb9,0xe6,0xb2,0xbd,
+ 0x0d,0x0a,0x0d,0x0a,0x6a,0x74,0x65,0x78,0x74,0x2f,
+ 0x6f,0x74,0x68,0x65,0x72,0x73,0x2f,0x0d,0x0a,0x0d,
+ 0x0a,0x20,0x20,0x62,0x36,0x34,0x6a,0x69,0x73,0x2e,
+ 0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,0x20,0x49,0x53,
+ 0x4f,0x2d,0x32,0x30,0x32,0x32,0x2d,0x4a,0x50,0x20,
+ 0x28,0x4a,0x49,0x53,0x29,0x20,0xa4,0xf2,0x20,0x62,
+ 0x61,0x73,0x65,0x36,0x34,0xa4,0xc7,0xc9,0xe4,0xb9,
+ 0xe6,0xb2,0xbd,0x0d,0x0a,0x20,0x20,0x71,0x74,0x6a,
+ 0x69,0x73,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,
+ 0x2d,0x20,0x49,0x53,0x4f,0x2d,0x32,0x30,0x32,0x32,
+ 0x2d,0x4a,0x50,0x20,0x28,0x4a,0x49,0x53,0x29,0x20,
+ 0xa4,0xf2,0x20,0x71,0x75,0x6f,0x74,0x65,0x64,0x2d,
+ 0x70,0x72,0x69,0x6e,0x74,0x61,0x62,0x6c,0x65,0xa4,
+ 0xc7,0xc9,0xe4,0xb9,0xe6,0xb2,0xbd,0x0d,0x0a,0x0d,
+ 0x0a,0x20,0x20,0x62,0x6b,0x65,0x75,0x63,0x2e,0x74,
+ 0x78,0x74,0x20,0x2d,0x2d,0x2d,0x2d,0x20,0xb2,0xf5,
+ 0xa4,0xec,0xa4,0xbf,0x45,0x55,0x43,0x2d,0x4a,0x50,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0xc0,0xe8,0xc6,0xac,
+ 0xa5,0xd3,0xa5,0xc3,0xa5,0xc8,0xa4,0xac,0xa5,0xbc,
+ 0xa5,0xed,0x0d,0x0a,0x20,0x20,0x62,0x6b,0x6a,0x69,
+ 0x73,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,0x2d,
+ 0x20,0xb2,0xf5,0xa4,0xec,0xa4,0xbf,0x4a,0x49,0x53,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x45,
+ 0x53,0x43,0xa5,0xb3,0xa1,0xbc,0xa5,0xc9,0xa4,0xac,
+ 0xb7,0xe7,0xa4,0xb1,0xa4,0xbf,0x0d,0x0a,0x20,0x20,
+ 0x62,0x6b,0x73,0x6a,0x69,0x73,0x2e,0x74,0x78,0x74,
+ 0x2d,0x2d,0x2d,0x2d,0x20,0xb2,0xf5,0xa4,0xec,0xa4,
+ 0xbf,0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,0x49,0x53,
+ 0x20,0x20,0x20,0xc0,0xe8,0xc6,0xac,0xa5,0xd3,0xa5,
+ 0xc3,0xa5,0xc8,0xa4,0xac,0xa5,0xbc,0xa5,0xed,0x0d,
+ 0x0a,0x0d,0x0a,0x20,0x20,0x63,0x74,0x72,0x6c,0x5f,
+ 0x7a,0x2e,0x74,0x78,0x74,0x20,0x20,0x20,0x20,0x20,
+ 0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,0x49,0x53,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x5e,0x5a,0xa5,0xad,0xa5,
+ 0xe3,0xa5,0xe9,0xa5,0xaf,0xa5,0xbf,0xc9,0xd5,0xa4,
+ 0xad,0x20,0x20,0x20,0x28,0x44,0x4f,0x53,0xc9,0xf7,
+ 0x29,0x0d,0x0a,0x20,0x20,0x6d,0x61,0x63,0x74,0x78,
+ 0x74,0x2e,0x62,0x69,0x6e,0x20,0x20,0x20,0x20,0x20,
+ 0xa5,0xde,0xa5,0xc3,0xa5,0xaf,0xa5,0xd0,0xa5,0xa4,
+ 0xa5,0xca,0xa5,0xea,0x49,0x49,0xa5,0xd5,0xa5,0xa9,
+ 0xa1,0xbc,0xa5,0xde,0xa5,0xc3,0xa5,0xc8,0x0d,0x0a
+};
+#endif /* #ifdef _ICONV_CONVERTER_EUC_JP */
+
+#ifdef _ICONV_CONVERTER_SHIFT_JIS
+char shift_jis[] =
+{
+ 0x90,0x46,0x81,0x58,0x83,0x65,0x83,0x4c,0x83,0x58,
+ 0x83,0x67,0x83,0x74,0x83,0x40,0x83,0x43,0x83,0x8b,
+ 0x8f,0x57,0x20,0x56,0x65,0x72,0x33,0x2e,0x33,0x20,
+ 0x28,0x43,0x29,0x48,0x41,0x54,0x0d,0x0a,0x0d,0x0a,
+ 0x82,0xb1,0x82,0xcc,0x83,0x41,0x81,0x5b,0x83,0x4a,
+ 0x83,0x43,0x83,0x75,0x82,0xcc,0x8d,0xc5,0x90,0x56,
+ 0x94,0xc5,0x82,0xcd,0x82,0xb1,0x82,0xb1,0x82,0xc9,
+ 0x82,0xa0,0x82,0xe8,0x82,0xdc,0x82,0xb7,0x81,0x42,
+ 0x0d,0x0a,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,
+ 0x77,0x77,0x30,0x32,0x2e,0x73,0x6f,0x2d,0x6e,0x65,
+ 0x74,0x2e,0x6e,0x65,0x2e,0x6a,0x70,0x2f,0x25,0x37,
+ 0x45,0x68,0x61,0x74,0x2f,0x66,0x69,0x6c,0x65,0x73,
+ 0x2f,0x69,0x6e,0x64,0x65,0x78,0x2d,0x6a,0x2e,0x68,
+ 0x74,0x6d,0x6c,0x0d,0x0a,0x0d,0x0a,0x63,0x72,0x2c,
+ 0x20,0x63,0x72,0x6c,0x66,0x2c,0x20,0x6c,0x66,0x83,
+ 0x66,0x83,0x42,0x83,0x8c,0x83,0x4e,0x83,0x67,0x83,
+ 0x8a,0x28,0x83,0x74,0x83,0x48,0x83,0x8b,0x83,0x5f,
+ 0x29,0x82,0xcc,0x93,0xe0,0x97,0x65,0x82,0xcd,0x93,
+ 0xaf,0x82,0xb6,0x82,0xc5,0x82,0xb7,0x82,0xaa,0x81,
+ 0x41,0x8d,0x73,0x82,0xcc,0x8b,0xe6,0x90,0xd8,0x82,
+ 0xe8,0x82,0xaa,0x82,0xbb,0x82,0xea,0x82,0xbc,0x82,
+ 0xea,0x0d,0x0a,0x43,0x52,0x28,0x4d,0x61,0x63,0x95,
+ 0x97,0x29,0x81,0x41,0x43,0x52,0x2b,0x4c,0x46,0x28,
+ 0x44,0x4f,0x53,0x95,0x97,0x29,0x81,0x41,0x4c,0x46,
+ 0x28,0x55,0x4e,0x49,0x58,0x95,0x97,0x29,0x82,0xc9,
+ 0x82,0xc8,0x82,0xc1,0x82,0xc4,0x82,0xa2,0x82,0xdc,
+ 0x82,0xb7,0x81,0x42,0x0d,0x0a,0x0d,0x0a,0x0d,0x0a,
+ 0x6a,0x74,0x65,0x78,0x74,0x2f,0x0d,0x0a,0x0d,0x0a,
+ 0x20,0x20,0x72,0x65,0x61,0x64,0x6d,0x65,0x2e,0x74,
+ 0x78,0x74,0x20,0x2d,0x2d,0x2d,0x20,0x89,0x70,0x8c,
+ 0xea,0x52,0x45,0x41,0x44,0x4d,0x45,0x20,0x20,0x20,
+ 0x20,0x20,0x28,0x41,0x53,0x43,0x49,0x49,0x29,0x0d,
+ 0x0a,0x20,0x20,0x72,0x65,0x61,0x64,0x6d,0x65,0x2e,
+ 0x65,0x75,0x63,0x20,0x2d,0x2d,0x2d,0x20,0x82,0xb1,
+ 0x82,0xcc,0x83,0x74,0x83,0x40,0x83,0x43,0x83,0x8b,
+ 0x20,0x20,0x20,0x28,0x45,0x55,0x43,0x2d,0x4a,0x50,
+ 0x29,0x0d,0x0a,0x20,0x20,0x72,0x65,0x61,0x64,0x6d,
+ 0x65,0x2e,0x6a,0x69,0x73,0x20,0x2d,0x2d,0x2d,0x20,
+ 0x93,0xfa,0x96,0x7b,0x8c,0xea,0x52,0x45,0x41,0x44,
+ 0x4d,0x45,0x20,0x20,0x20,0x28,0x4a,0x49,0x53,0x29,
+ 0x0d,0x0a,0x20,0x20,0x72,0x65,0x61,0x64,0x6d,0x65,
+ 0x2e,0x73,0x6a,0x73,0x20,0x2d,0x2d,0x2d,0x20,0x93,
+ 0xfa,0x96,0x7b,0x8c,0xea,0x52,0x45,0x41,0x44,0x4d,
+ 0x45,0x20,0x20,0x20,0x28,0x53,0x68,0x69,0x66,0x74,
+ 0x5f,0x4a,0x49,0x53,0x29,0x0d,0x0a,0x0d,0x0a,0x6a,
+ 0x74,0x65,0x78,0x74,0x2f,0x63,0x72,0x2f,0x0d,0x0a,
+ 0x6a,0x74,0x65,0x78,0x74,0x2f,0x63,0x72,0x6c,0x66,
+ 0x2f,0x0d,0x0a,0x6a,0x74,0x65,0x78,0x74,0x2f,0x6c,
+ 0x66,0x2f,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x61,0x73,
+ 0x63,0x69,0x69,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,
+ 0x2d,0x2d,0x20,0x41,0x53,0x43,0x49,0x49,0x82,0xc5,
+ 0x8f,0x91,0x82,0xa2,0x82,0xbd,0x93,0xfa,0x96,0x7b,
+ 0x8c,0xea,0x28,0x83,0x8d,0x81,0x5b,0x83,0x7d,0x8e,
+ 0x9a,0x29,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x6a,0x30,
+ 0x32,0x30,0x31,0x2d,0x38,0x62,0x2e,0x74,0x78,0x74,
+ 0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,
+ 0x30,0x31,0x82,0xcc,0x95,0xd0,0x89,0xbc,0x96,0xbc,
+ 0x20,0x82,0xf0,0x20,0x38,0x92,0x50,0x88,0xca,0x95,
+ 0x84,0x8d,0x86,0x89,0xbb,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,0x49,
+ 0x53,0x82,0xc6,0x93,0xaf,0x82,0xb6,0x0d,0x0a,0x20,
+ 0x20,0x6a,0x30,0x32,0x30,0x31,0x2d,0x65,0x73,0x2e,
+ 0x74,0x78,0x74,0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,
+ 0x58,0x30,0x32,0x30,0x31,0x82,0xcc,0x95,0xd0,0x89,
+ 0xbc,0x96,0xbc,0x20,0x82,0xf0,0x20,0x45,0x53,0x43,
+ 0x28,0x49,0x82,0xc5,0x95,0x84,0x8d,0x86,0x89,0xbb,
+ 0x0d,0x0a,0x20,0x20,0x6a,0x30,0x32,0x30,0x31,0x2d,
+ 0x73,0x6f,0x2e,0x74,0x78,0x74,0x20,0x2d,0x20,0x4a,
+ 0x49,0x53,0x20,0x58,0x30,0x32,0x30,0x31,0x82,0xcc,
+ 0x95,0xd0,0x89,0xbc,0x96,0xbc,0x20,0x82,0xf0,0x20,
+ 0x53,0x4f,0x2f,0x53,0x49,0x82,0xc5,0x95,0x84,0x8d,
+ 0x86,0x89,0xbb,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x6a,
+ 0x30,0x32,0x30,0x38,0x2d,0x38,0x62,0x2e,0x74,0x78,
+ 0x74,0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,
+ 0x32,0x30,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x82,0xf0,0x20,0x38,0x92,0x50,0x88,0xca,
+ 0x95,0x84,0x8d,0x86,0x89,0xbb,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x45,0x55,0x43,0x2d,0x4a,0x50,0x82,
+ 0xc6,0x93,0xaf,0x82,0xb6,0x0d,0x0a,0x20,0x20,0x6a,
+ 0x30,0x32,0x30,0x38,0x2d,0x37,0x38,0x2e,0x74,0x78,
+ 0x74,0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,
+ 0x32,0x30,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x82,0xf0,0x20,0x45,0x53,0x43,0x24,0x40,
+ 0x82,0xc5,0x95,0x84,0x8d,0x86,0x89,0xbb,0x20,0x20,
+ 0x20,0x20,0x20,0x82,0xa2,0x82,0xed,0x82,0xe4,0x82,
+ 0xe9,0x8b,0x8c,0x4a,0x49,0x53,0x0d,0x0a,0x20,0x20,
+ 0x6a,0x30,0x32,0x30,0x38,0x2d,0x38,0x33,0x2e,0x74,
+ 0x78,0x74,0x20,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,
+ 0x30,0x32,0x30,0x38,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x82,0xf0,0x20,0x45,0x53,0x43,0x24,
+ 0x42,0x82,0xc5,0x95,0x84,0x8d,0x86,0x89,0xbb,0x20,
+ 0x20,0x20,0x20,0x20,0x82,0xa2,0x82,0xed,0x82,0xe4,
+ 0x82,0xe9,0x90,0x56,0x4a,0x49,0x53,0x0d,0x0a,0x0d,
+ 0x0a,0x20,0x20,0x65,0x30,0x32,0x30,0x31,0x2e,0x74,
+ 0x78,0x74,0x20,0x2d,0x2d,0x2d,0x2d,0x20,0x4a,0x49,
+ 0x53,0x20,0x58,0x30,0x32,0x30,0x31,0x82,0xcc,0x95,
+ 0xd0,0x89,0xbc,0x96,0xbc,0x20,0x82,0xf0,0x20,0x45,
+ 0x55,0x43,0x2d,0x4a,0x50,0x82,0xc5,0x95,0x84,0x8d,
+ 0x86,0x89,0xbb,0x0d,0x0a,0x20,0x20,0x65,0x30,0x32,
+ 0x30,0x38,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,
+ 0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,0x30,
+ 0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x82,0xf0,0x20,0x45,0x55,0x43,0x2d,0x4a,0x50,0x82,
+ 0xc5,0x95,0x84,0x8d,0x86,0x89,0xbb,0x20,0x20,0x20,
+ 0x20,0x38,0x83,0x72,0x83,0x62,0x83,0x67,0x4a,0x49,
+ 0x53,0x58,0x30,0x32,0x30,0x38,0x82,0xc6,0x93,0xaf,
+ 0x82,0xb6,0x0d,0x0a,0x0d,0x0a,0x20,0x20,0x73,0x30,
+ 0x32,0x30,0x31,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,
+ 0x2d,0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,
+ 0x30,0x31,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x82,0xf0,0x20,0x53,0x68,0x69,0x66,0x74,0x5f,
+ 0x4a,0x49,0x53,0x82,0xc5,0x95,0x84,0x8d,0x86,0x89,
+ 0xbb,0x20,0x38,0x83,0x72,0x83,0x62,0x83,0x67,0x4a,
+ 0x49,0x53,0x58,0x30,0x32,0x30,0x31,0x82,0xc6,0x93,
+ 0xaf,0x82,0xb6,0x0d,0x0a,0x20,0x20,0x73,0x30,0x32,
+ 0x30,0x38,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,
+ 0x2d,0x20,0x4a,0x49,0x53,0x20,0x58,0x30,0x32,0x30,
+ 0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x82,0xf0,0x20,0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,
+ 0x49,0x53,0x82,0xc5,0x95,0x84,0x8d,0x86,0x89,0xbb,
+ 0x0d,0x0a,0x0d,0x0a,0x6a,0x74,0x65,0x78,0x74,0x2f,
+ 0x6f,0x74,0x68,0x65,0x72,0x73,0x2f,0x0d,0x0a,0x0d,
+ 0x0a,0x20,0x20,0x62,0x36,0x34,0x6a,0x69,0x73,0x2e,
+ 0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,0x20,0x49,0x53,
+ 0x4f,0x2d,0x32,0x30,0x32,0x32,0x2d,0x4a,0x50,0x20,
+ 0x28,0x4a,0x49,0x53,0x29,0x20,0x82,0xf0,0x20,0x62,
+ 0x61,0x73,0x65,0x36,0x34,0x82,0xc5,0x95,0x84,0x8d,
+ 0x86,0x89,0xbb,0x0d,0x0a,0x20,0x20,0x71,0x74,0x6a,
+ 0x69,0x73,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,
+ 0x2d,0x20,0x49,0x53,0x4f,0x2d,0x32,0x30,0x32,0x32,
+ 0x2d,0x4a,0x50,0x20,0x28,0x4a,0x49,0x53,0x29,0x20,
+ 0x82,0xf0,0x20,0x71,0x75,0x6f,0x74,0x65,0x64,0x2d,
+ 0x70,0x72,0x69,0x6e,0x74,0x61,0x62,0x6c,0x65,0x82,
+ 0xc5,0x95,0x84,0x8d,0x86,0x89,0xbb,0x0d,0x0a,0x0d,
+ 0x0a,0x20,0x20,0x62,0x6b,0x65,0x75,0x63,0x2e,0x74,
+ 0x78,0x74,0x20,0x2d,0x2d,0x2d,0x2d,0x20,0x89,0xf3,
+ 0x82,0xea,0x82,0xbd,0x45,0x55,0x43,0x2d,0x4a,0x50,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x90,0xe6,0x93,0xaa,
+ 0x83,0x72,0x83,0x62,0x83,0x67,0x82,0xaa,0x83,0x5b,
+ 0x83,0x8d,0x0d,0x0a,0x20,0x20,0x62,0x6b,0x6a,0x69,
+ 0x73,0x2e,0x74,0x78,0x74,0x20,0x2d,0x2d,0x2d,0x2d,
+ 0x20,0x89,0xf3,0x82,0xea,0x82,0xbd,0x4a,0x49,0x53,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x45,
+ 0x53,0x43,0x83,0x52,0x81,0x5b,0x83,0x68,0x82,0xaa,
+ 0x8c,0x87,0x82,0xaf,0x82,0xbd,0x0d,0x0a,0x20,0x20,
+ 0x62,0x6b,0x73,0x6a,0x69,0x73,0x2e,0x74,0x78,0x74,
+ 0x2d,0x2d,0x2d,0x2d,0x20,0x89,0xf3,0x82,0xea,0x82,
+ 0xbd,0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,0x49,0x53,
+ 0x20,0x20,0x20,0x90,0xe6,0x93,0xaa,0x83,0x72,0x83,
+ 0x62,0x83,0x67,0x82,0xaa,0x83,0x5b,0x83,0x8d,0x0d,
+ 0x0a,0x0d,0x0a,0x20,0x20,0x63,0x74,0x72,0x6c,0x5f,
+ 0x7a,0x2e,0x74,0x78,0x74,0x20,0x20,0x20,0x20,0x20,
+ 0x53,0x68,0x69,0x66,0x74,0x5f,0x4a,0x49,0x53,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x5e,0x5a,0x83,0x4c,0x83,
+ 0x83,0x83,0x89,0x83,0x4e,0x83,0x5e,0x95,0x74,0x82,
+ 0xab,0x20,0x20,0x20,0x28,0x44,0x4f,0x53,0x95,0x97,
+ 0x29,0x0d,0x0a,0x20,0x20,0x6d,0x61,0x63,0x74,0x78,
+ 0x74,0x2e,0x62,0x69,0x6e,0x20,0x20,0x20,0x20,0x20,
+ 0x83,0x7d,0x83,0x62,0x83,0x4e,0x83,0x6f,0x83,0x43,
+ 0x83,0x69,0x83,0x8a,0x49,0x49,0x83,0x74,0x83,0x48,
+ 0x81,0x5b,0x83,0x7d,0x83,0x62,0x83,0x67,0x0d,0x0a
+};
+#endif /* _ICONV_CONVERTER_SHIFT_JIS */
+
+#ifdef _ICONV_CONVERTER_UCS_2_INTERNAL
+short ucs2[] =
+{
+ 0x8272,0x3005,0x30c6,0x30ad,0x30b9,
+ 0x30c8,0x30d5,0x30a1,0x30a4,0x30eb,
+ 0x96c6,0x0020,0x0056,0x0065,0x0072,
+ 0x0033,0x002e,0x0033,0x0020,0x0028,
+ 0x0043,0x0029,0x0048,0x0041,0x0054,
+ 0x000d,0x000a,0x000d,0x000a,0x3053,
+ 0x306e,0x30a2,0x30fc,0x30ab,0x30a4,
+ 0x30d6,0x306e,0x6700,0x65b0,0x7248,
+ 0x306f,0x3053,0x3053,0x306b,0x3042,
+ 0x308a,0x307e,0x3059,0x3002,0x000d,
+ 0x000a,0x0068,0x0074,0x0074,0x0070,
+ 0x003a,0x002f,0x002f,0x0077,0x0077,
+ 0x0077,0x0030,0x0032,0x002e,0x0073,
+ 0x006f,0x002d,0x006e,0x0065,0x0074,
+ 0x002e,0x006e,0x0065,0x002e,0x006a,
+ 0x0070,0x002f,0x0025,0x0037,0x0045,
+ 0x0068,0x0061,0x0074,0x002f,0x0066,
+ 0x0069,0x006c,0x0065,0x0073,0x002f,
+ 0x0069,0x006e,0x0064,0x0065,0x0078,
+ 0x002d,0x006a,0x002e,0x0068,0x0074,
+ 0x006d,0x006c,0x000d,0x000a,0x000d,
+ 0x000a,0x0063,0x0072,0x002c,0x0020,
+ 0x0063,0x0072,0x006c,0x0066,0x002c,
+ 0x0020,0x006c,0x0066,0x30c7,0x30a3,
+ 0x30ec,0x30af,0x30c8,0x30ea,0x0028,
+ 0x30d5,0x30a9,0x30eb,0x30c0,0x0029,
+ 0x306e,0x5185,0x5bb9,0x306f,0x540c,
+ 0x3058,0x3067,0x3059,0x304c,0x3001,
+ 0x884c,0x306e,0x533a,0x5207,0x308a,
+ 0x304c,0x305d,0x308c,0x305e,0x308c,
+ 0x000d,0x000a,0x0043,0x0052,0x0028,
+ 0x004d,0x0061,0x0063,0x98a8,0x0029,
+ 0x3001,0x0043,0x0052,0x002b,0x004c,
+ 0x0046,0x0028,0x0044,0x004f,0x0053,
+ 0x98a8,0x0029,0x3001,0x004c,0x0046,
+ 0x0028,0x0055,0x004e,0x0049,0x0058,
+ 0x98a8,0x0029,0x306b,0x306a,0x3063,
+ 0x3066,0x3044,0x307e,0x3059,0x3002,
+ 0x000d,0x000a,0x000d,0x000a,0x000d,
+ 0x000a,0x006a,0x0074,0x0065,0x0078,
+ 0x0074,0x002f,0x000d,0x000a,0x000d,
+ 0x000a,0x0020,0x0020,0x0072,0x0065,
+ 0x0061,0x0064,0x006d,0x0065,0x002e,
+ 0x0074,0x0078,0x0074,0x0020,0x002d,
+ 0x002d,0x002d,0x0020,0x82f1,0x8a9e,
+ 0x0052,0x0045,0x0041,0x0044,0x004d,
+ 0x0045,0x0020,0x0020,0x0020,0x0020,
+ 0x0020,0x0028,0x0041,0x0053,0x0043,
+ 0x0049,0x0049,0x0029,0x000d,0x000a,
+ 0x0020,0x0020,0x0072,0x0065,0x0061,
+ 0x0064,0x006d,0x0065,0x002e,0x0065,
+ 0x0075,0x0063,0x0020,0x002d,0x002d,
+ 0x002d,0x0020,0x3053,0x306e,0x30d5,
+ 0x30a1,0x30a4,0x30eb,0x0020,0x0020,
+ 0x0020,0x0028,0x0045,0x0055,0x0043,
+ 0x002d,0x004a,0x0050,0x0029,0x000d,
+ 0x000a,0x0020,0x0020,0x0072,0x0065,
+ 0x0061,0x0064,0x006d,0x0065,0x002e,
+ 0x006a,0x0069,0x0073,0x0020,0x002d,
+ 0x002d,0x002d,0x0020,0x65e5,0x672c,
+ 0x8a9e,0x0052,0x0045,0x0041,0x0044,
+ 0x004d,0x0045,0x0020,0x0020,0x0020,
+ 0x0028,0x004a,0x0049,0x0053,0x0029,
+ 0x000d,0x000a,0x0020,0x0020,0x0072,
+ 0x0065,0x0061,0x0064,0x006d,0x0065,
+ 0x002e,0x0073,0x006a,0x0073,0x0020,
+ 0x002d,0x002d,0x002d,0x0020,0x65e5,
+ 0x672c,0x8a9e,0x0052,0x0045,0x0041,
+ 0x0044,0x004d,0x0045,0x0020,0x0020,
+ 0x0020,0x0028,0x0053,0x0068,0x0069,
+ 0x0066,0x0074,0x005f,0x004a,0x0049,
+ 0x0053,0x0029,0x000d,0x000a,0x000d,
+ 0x000a,0x006a,0x0074,0x0065,0x0078,
+ 0x0074,0x002f,0x0063,0x0072,0x002f,
+ 0x000d,0x000a,0x006a,0x0074,0x0065,
+ 0x0078,0x0074,0x002f,0x0063,0x0072,
+ 0x006c,0x0066,0x002f,0x000d,0x000a,
+ 0x006a,0x0074,0x0065,0x0078,0x0074,
+ 0x002f,0x006c,0x0066,0x002f,0x000d,
+ 0x000a,0x000d,0x000a,0x0020,0x0020,
+ 0x0061,0x0073,0x0063,0x0069,0x0069,
+ 0x002e,0x0074,0x0078,0x0074,0x0020,
+ 0x002d,0x002d,0x002d,0x002d,0x0020,
+ 0x0041,0x0053,0x0043,0x0049,0x0049,
+ 0x3067,0x66f8,0x3044,0x305f,0x65e5,
+ 0x672c,0x8a9e,0x0028,0x30ed,0x30fc,
+ 0x30de,0x5b57,0x0029,0x000d,0x000a,
+ 0x000d,0x000a,0x0020,0x0020,0x006a,
+ 0x0030,0x0032,0x0030,0x0031,0x002d,
+ 0x0038,0x0062,0x002e,0x0074,0x0078,
+ 0x0074,0x0020,0x002d,0x0020,0x004a,
+ 0x0049,0x0053,0x0020,0x0058,0x0030,
+ 0x0032,0x0030,0x0031,0x306e,0x7247,
+ 0x4eee,0x540d,0x0020,0x3092,0x0020,
+ 0x0038,0x5358,0x4f4d,0x7b26,0x53f7,
+ 0x5316,0x0020,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x0053,0x0068,
+ 0x0069,0x0066,0x0074,0x005f,0x004a,
+ 0x0049,0x0053,0x3068,0x540c,0x3058,
+ 0x000d,0x000a,0x0020,0x0020,0x006a,
+ 0x0030,0x0032,0x0030,0x0031,0x002d,
+ 0x0065,0x0073,0x002e,0x0074,0x0078,
+ 0x0074,0x0020,0x002d,0x0020,0x004a,
+ 0x0049,0x0053,0x0020,0x0058,0x0030,
+ 0x0032,0x0030,0x0031,0x306e,0x7247,
+ 0x4eee,0x540d,0x0020,0x3092,0x0020,
+ 0x0045,0x0053,0x0043,0x0028,0x0049,
+ 0x3067,0x7b26,0x53f7,0x5316,0x000d,
+ 0x000a,0x0020,0x0020,0x006a,0x0030,
+ 0x0032,0x0030,0x0031,0x002d,0x0073,
+ 0x006f,0x002e,0x0074,0x0078,0x0074,
+ 0x0020,0x002d,0x0020,0x004a,0x0049,
+ 0x0053,0x0020,0x0058,0x0030,0x0032,
+ 0x0030,0x0031,0x306e,0x7247,0x4eee,
+ 0x540d,0x0020,0x3092,0x0020,0x0053,
+ 0x004f,0x002f,0x0053,0x0049,0x3067,
+ 0x7b26,0x53f7,0x5316,0x000d,0x000a,
+ 0x000d,0x000a,0x0020,0x0020,0x006a,
+ 0x0030,0x0032,0x0030,0x0038,0x002d,
+ 0x0038,0x0062,0x002e,0x0074,0x0078,
+ 0x0074,0x0020,0x002d,0x0020,0x004a,
+ 0x0049,0x0053,0x0020,0x0058,0x0030,
+ 0x0032,0x0030,0x0038,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x3092,0x0020,0x0038,
+ 0x5358,0x4f4d,0x7b26,0x53f7,0x5316,
+ 0x0020,0x0020,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x0045,0x0055,0x0043,
+ 0x002d,0x004a,0x0050,0x3068,0x540c,
+ 0x3058,0x000d,0x000a,0x0020,0x0020,
+ 0x006a,0x0030,0x0032,0x0030,0x0038,
+ 0x002d,0x0037,0x0038,0x002e,0x0074,
+ 0x0078,0x0074,0x0020,0x002d,0x0020,
+ 0x004a,0x0049,0x0053,0x0020,0x0058,
+ 0x0030,0x0032,0x0030,0x0038,0x0020,
+ 0x0020,0x0020,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x3092,0x0020,
+ 0x0045,0x0053,0x0043,0x0024,0x0040,
+ 0x3067,0x7b26,0x53f7,0x5316,0x0020,
+ 0x0020,0x0020,0x0020,0x0020,0x3044,
+ 0x308f,0x3086,0x308b,0x65e7,0x004a,
+ 0x0049,0x0053,0x000d,0x000a,0x0020,
+ 0x0020,0x006a,0x0030,0x0032,0x0030,
+ 0x0038,0x002d,0x0038,0x0033,0x002e,
+ 0x0074,0x0078,0x0074,0x0020,0x002d,
+ 0x0020,0x004a,0x0049,0x0053,0x0020,
+ 0x0058,0x0030,0x0032,0x0030,0x0038,
+ 0x0020,0x0020,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x0020,0x3092,
+ 0x0020,0x0045,0x0053,0x0043,0x0024,
+ 0x0042,0x3067,0x7b26,0x53f7,0x5316,
+ 0x0020,0x0020,0x0020,0x0020,0x0020,
+ 0x3044,0x308f,0x3086,0x308b,0x65b0,
+ 0x004a,0x0049,0x0053,0x000d,0x000a,
+ 0x000d,0x000a,0x0020,0x0020,0x0065,
+ 0x0030,0x0032,0x0030,0x0031,0x002e,
+ 0x0074,0x0078,0x0074,0x0020,0x002d,
+ 0x002d,0x002d,0x002d,0x0020,0x004a,
+ 0x0049,0x0053,0x0020,0x0058,0x0030,
+ 0x0032,0x0030,0x0031,0x306e,0x7247,
+ 0x4eee,0x540d,0x0020,0x3092,0x0020,
+ 0x0045,0x0055,0x0043,0x002d,0x004a,
+ 0x0050,0x3067,0x7b26,0x53f7,0x5316,
+ 0x000d,0x000a,0x0020,0x0020,0x0065,
+ 0x0030,0x0032,0x0030,0x0038,0x002e,
+ 0x0074,0x0078,0x0074,0x0020,0x002d,
+ 0x002d,0x002d,0x002d,0x0020,0x004a,
+ 0x0049,0x0053,0x0020,0x0058,0x0030,
+ 0x0032,0x0030,0x0038,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x3092,0x0020,0x0045,
+ 0x0055,0x0043,0x002d,0x004a,0x0050,
+ 0x3067,0x7b26,0x53f7,0x5316,0x0020,
+ 0x0020,0x0020,0x0020,0x0038,0x30d3,
+ 0x30c3,0x30c8,0x004a,0x0049,0x0053,
+ 0x0058,0x0030,0x0032,0x0030,0x0038,
+ 0x3068,0x540c,0x3058,0x000d,0x000a,
+ 0x000d,0x000a,0x0020,0x0020,0x0073,
+ 0x0030,0x0032,0x0030,0x0031,0x002e,
+ 0x0074,0x0078,0x0074,0x0020,0x002d,
+ 0x002d,0x002d,0x002d,0x0020,0x004a,
+ 0x0049,0x0053,0x0020,0x0058,0x0030,
+ 0x0032,0x0030,0x0031,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x3092,0x0020,0x0053,
+ 0x0068,0x0069,0x0066,0x0074,0x005f,
+ 0x004a,0x0049,0x0053,0x3067,0x7b26,
+ 0x53f7,0x5316,0x0020,0x0038,0x30d3,
+ 0x30c3,0x30c8,0x004a,0x0049,0x0053,
+ 0x0058,0x0030,0x0032,0x0030,0x0031,
+ 0x3068,0x540c,0x3058,0x000d,0x000a,
+ 0x0020,0x0020,0x0073,0x0030,0x0032,
+ 0x0030,0x0038,0x002e,0x0074,0x0078,
+ 0x0074,0x0020,0x002d,0x002d,0x002d,
+ 0x002d,0x0020,0x004a,0x0049,0x0053,
+ 0x0020,0x0058,0x0030,0x0032,0x0030,
+ 0x0038,0x0020,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x0020,0x0020,
+ 0x3092,0x0020,0x0053,0x0068,0x0069,
+ 0x0066,0x0074,0x005f,0x004a,0x0049,
+ 0x0053,0x3067,0x7b26,0x53f7,0x5316,
+ 0x000d,0x000a,0x000d,0x000a,0x006a,
+ 0x0074,0x0065,0x0078,0x0074,0x002f,
+ 0x006f,0x0074,0x0068,0x0065,0x0072,
+ 0x0073,0x002f,0x000d,0x000a,0x000d,
+ 0x000a,0x0020,0x0020,0x0062,0x0036,
+ 0x0034,0x006a,0x0069,0x0073,0x002e,
+ 0x0074,0x0078,0x0074,0x0020,0x002d,
+ 0x002d,0x002d,0x0020,0x0049,0x0053,
+ 0x004f,0x002d,0x0032,0x0030,0x0032,
+ 0x0032,0x002d,0x004a,0x0050,0x0020,
+ 0x0028,0x004a,0x0049,0x0053,0x0029,
+ 0x0020,0x3092,0x0020,0x0062,0x0061,
+ 0x0073,0x0065,0x0036,0x0034,0x3067,
+ 0x7b26,0x53f7,0x5316,0x000d,0x000a,
+ 0x0020,0x0020,0x0071,0x0074,0x006a,
+ 0x0069,0x0073,0x002e,0x0074,0x0078,
+ 0x0074,0x0020,0x002d,0x002d,0x002d,
+ 0x002d,0x0020,0x0049,0x0053,0x004f,
+ 0x002d,0x0032,0x0030,0x0032,0x0032,
+ 0x002d,0x004a,0x0050,0x0020,0x0028,
+ 0x004a,0x0049,0x0053,0x0029,0x0020,
+ 0x3092,0x0020,0x0071,0x0075,0x006f,
+ 0x0074,0x0065,0x0064,0x002d,0x0070,
+ 0x0072,0x0069,0x006e,0x0074,0x0061,
+ 0x0062,0x006c,0x0065,0x3067,0x7b26,
+ 0x53f7,0x5316,0x000d,0x000a,0x000d,
+ 0x000a,0x0020,0x0020,0x0062,0x006b,
+ 0x0065,0x0075,0x0063,0x002e,0x0074,
+ 0x0078,0x0074,0x0020,0x002d,0x002d,
+ 0x002d,0x002d,0x0020,0x58ca,0x308c,
+ 0x305f,0x0045,0x0055,0x0043,0x002d,
+ 0x004a,0x0050,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x5148,0x982d,
+ 0x30d3,0x30c3,0x30c8,0x304c,0x30bc,
+ 0x30ed,0x000d,0x000a,0x0020,0x0020,
+ 0x0062,0x006b,0x006a,0x0069,0x0073,
+ 0x002e,0x0074,0x0078,0x0074,0x0020,
+ 0x002d,0x002d,0x002d,0x002d,0x0020,
+ 0x58ca,0x308c,0x305f,0x004a,0x0049,
+ 0x0053,0x0020,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x0020,0x0020,
+ 0x0045,0x0053,0x0043,0x30b3,0x30fc,
+ 0x30c9,0x304c,0x6b20,0x3051,0x305f,
+ 0x000d,0x000a,0x0020,0x0020,0x0062,
+ 0x006b,0x0073,0x006a,0x0069,0x0073,
+ 0x002e,0x0074,0x0078,0x0074,0x002d,
+ 0x002d,0x002d,0x002d,0x0020,0x58ca,
+ 0x308c,0x305f,0x0053,0x0068,0x0069,
+ 0x0066,0x0074,0x005f,0x004a,0x0049,
+ 0x0053,0x0020,0x0020,0x0020,0x5148,
+ 0x982d,0x30d3,0x30c3,0x30c8,0x304c,
+ 0x30bc,0x30ed,0x000d,0x000a,0x000d,
+ 0x000a,0x0020,0x0020,0x0063,0x0074,
+ 0x0072,0x006c,0x005f,0x007a,0x002e,
+ 0x0074,0x0078,0x0074,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x0053,0x0068,
+ 0x0069,0x0066,0x0074,0x005f,0x004a,
+ 0x0049,0x0053,0x0020,0x0020,0x0020,
+ 0x0020,0x0020,0x0020,0x005e,0x005a,
+ 0x30ad,0x30e3,0x30e9,0x30af,0x30bf,
+ 0x4ed8,0x304d,0x0020,0x0020,0x0020,
+ 0x0028,0x0044,0x004f,0x0053,0x98a8,
+ 0x0029,0x000d,0x000a,0x0020,0x0020,
+ 0x006d,0x0061,0x0063,0x0074,0x0078,
+ 0x0074,0x002e,0x0062,0x0069,0x006e,
+ 0x0020,0x0020,0x0020,0x0020,0x0020,
+ 0x30de,0x30c3,0x30af,0x30d0,0x30a4,
+ 0x30ca,0x30ea,0x0049,0x0049,0x30d5,
+ 0x30a9,0x30fc,0x30de,0x30c3,0x30c8,
+ 0x000d,0x000a
+};
+#endif
+
+struct iconv_data
+{
+ int len;
+ char *name;
+ char *data;
+};
+
+#define CONVERSIONS 4
+
+struct iconv_data data[] =
+{
+#ifdef _ICONV_CONVERTER_EUC_JP
+ {sizeof(euc_jp), "EUC-JP", (char *)euc_jp},
+#endif
+#ifdef _ICONV_CONVERTER_SHIFT_JIS
+ {sizeof(shift_jis), "SHIFT-JIS", (char *)shift_jis},
+#endif
+#ifdef _ICONV_CONVERTER_UTF_8
+ {sizeof(utf8), "UTF-8", (char *)utf8},
+#endif
+#ifdef _ICONV_CONVERTER_UCS_2_INTERNAL
+ {sizeof(ucs2), "UCS-2-INTERNAL", (char *)ucs2},
+#endif
+ {0, NULL, NULL}
+};
+
+#define OUTBUF_LEN 2800
+char ob[OUTBUF_LEN];
+
+iconv_t descs[CONVERSIONS*CONVERSIONS];
+
+#define ERROR 0
+
+int main(int argc, char **argv)
+{
+ int i, j, k, d = 0;
+ size_t n;
+ char *outbuf, *inbuf;
+ int conversions = sizeof(data)/sizeof(struct iconv_data) - 1;
+
+ puts("JP iconv test");
+
+ for (i = 0; i < conversions; i++)
+ {
+ for (j = 0; j < conversions; j++)
+ {
+ descs[d] = iconv_open(data[j].name, data[i].name);
+ if (descs[d++] == (iconv_t)-1)
+ {
+ printf("iconv_open(%s, %s)\n", data[i].name, data[j].name);
+ perror("");
+ CHECK(ERROR);
+ }
+ }
+ }
+
+ d = 0;
+ for (i = 0; i < conversions; i++)
+ {
+ for (j = 0; j < conversions; j++)
+ {
+ size_t inbytes = data[i].len;
+ size_t outbytes = OUTBUF_LEN;
+ inbuf = data[i].data;
+ outbuf = (char *)ob;
+
+ if (iconv(descs[d], NULL, NULL, (char **)&outbuf, &outbytes) == (size_t)-1)
+ {
+ perror("Can't reset shift state");
+ CHECK(ERROR);
+ }
+
+ n = iconv(descs[d++], (const char **)&(inbuf), &inbytes,
+ (char **)&outbuf, &outbytes);
+ if (n == (size_t)-1)
+ {
+ printf("Conversion from %s to %s FAILED - iconv() "
+ "returned -1\n", data[i].name, data[j].name);
+ perror("");
+ CHECK(ERROR);
+ }
+
+ if (data[j].len != OUTBUF_LEN - outbytes)
+ {
+ printf("Conversion from %s to %s FAILED",
+ data[i].name, data[j].name);
+ printf(" - bad output buffer length (%d instead of %d)\n",
+ OUTBUF_LEN - outbytes, data[j].len);
+ CHECK(ERROR);
+ }
+
+ for (k = 0; k < data[j].len; k++)
+ {
+ if (ob[k] != data[j].data[k])
+ {
+ printf("Conversion from %s to %s FAILED",
+ data[i].name, data[j].name);
+ printf("Error: byte %d is wrong\n", k);
+ printf("outbuf value: %#x, inbuf value %#x, "
+ "right value: %#x\n",
+ (int)ob[k], (int)(data[i].data[k]),
+ (int)(data[j].data[k]));
+ CHECK(ERROR);
+ }
+ }
+
+ printf("iconv from %s to %s was successfully done\n",
+ data[i].name, data[j].name);
+
+ }
+ }
+
+ d = 0;
+ for (i = 0; i < conversions; i++)
+ for (j = 0; j < conversions; j++)
+ CHECK(iconv_close(descs[d++]) != -1);
+
+ exit(0);
+}
+
+#else /* #if defined(_ICONV_CONVERTER_UTF_8) || ... */
+int main(int argc, char **argv)
+{
+ puts("None of UTF-8, EUC-JP, SHIFT-JIS and UCS-2_INTERNAL converters "
+ "linked, SKIP test");
+ exit(0);
+}
+#endif /* #if defined(_ICONV_CONVERTER_UTF_8) || ... */
+
+#else /* #ifdef _ICONV_ENABLED */
+int main(int argc, char **argv)
+{
+ puts("iconv library is disabled, SKIP test");
+ exit(0);
+}
+#endif /* #ifdef _ICONV_ENABLED */
+
diff --git a/newlib/testsuite/newlib.iconv/iconvnm.c b/newlib/testsuite/newlib.iconv/iconvnm.c
new file mode 100644
index 0000000..d7ef216
--- /dev/null
+++ b/newlib/testsuite/newlib.iconv/iconvnm.c
@@ -0,0 +1,113 @@
+/*
+ * Copyright (c) 2003, Artem B. Bityuckiy, SoftMine Corporation.
+ * Rights transferred to Franklin Electronic Publishers.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include <iconv.h>
+#include <errno.h>
+#include <newlib.h>
+#include "check.h"
+
+#ifdef _ICONV_ENABLED
+
+char *good_names[] = {
+#ifdef _ICONV_CONVERTER_ISO_8859_5
+"iso_8859_5", "iso-8859-5", "iso-8859_5", "IsO-8859_5"
+#elif defined _ICONV_CONVERTER_US_ASCII
+"us_ascii", "US_ASCII", "us-ASCII", "US-ASCII"
+#elif defined _ICONV_CONVERTER_EUC_JP
+"euc-jp", "EUC_JP", "euc-JP", "EUC-JP"
+#elif defined _ICONV_CONVERTER_UTF_8
+"utf_8", "UTF_8", "uTf-8", "UTF-8"
+#else
+#endif
+};
+
+char *bad_names[] =
+{" ", "iso", "8", "iso_8859_5 ", " iso_8859_5", "csisolatincyrillic ",
+ " csisolatincyrillic", "euc-", "p", "euc_jp ", "euc-jp-",
+ "us_as", "us_", "us_ascii ", " us_ascii",
+ "CCCP", "", "-1", "-", "_", "---", "___", "-_-_-", "_-_-_", NULL};
+
+int main(int argc, char **argv)
+{
+ int i, failed = 0;
+ iconv_t cd;
+
+ puts("iconv names test");
+
+ CHECK(setenv("NLSPATH", "./", 0) != -1);
+
+ for (i = 0; i < sizeof(good_names)/sizeof(char *); i++)
+ {
+ printf("Trying iconv(%s, %s)", good_names[0], good_names[i]);
+ fflush(stdout);
+
+ cd = iconv_open(good_names[0], good_names[i]);
+
+ if (cd == (iconv_t)-1)
+ {
+ puts(" ... FAILED");
+ failed += 1;
+ }
+ else
+ {
+ puts(" ... PASSED");
+ CHECK(iconv_close(cd) != -1);
+ }
+ }
+
+ for (i = 0; i < sizeof(bad_names)/sizeof(char *); i++)
+ {
+ printf("Trying iconv(%s, \"%s\")", good_names[0], bad_names[i]);
+ fflush(stdout);
+
+ cd = iconv_open(good_names[0], bad_names[i]);
+
+ if (cd != (iconv_t)-1)
+ {
+ puts(" ... FAILED");
+ failed += 1;
+ }
+ else
+ puts(" ... PASSED");
+ }
+
+ if (failed)
+ {
+ printf("%d FAILTURES\n", failed);
+ abort();
+ }
+
+ exit(0);
+}
+#else
+int main(int argc, char **argv)
+{
+ puts("iconv library is disabled, skip name test");
+ exit(0);
+}
+#endif /* #ifdef _ICONV_ENABLED */
+
diff --git a/newlib/testsuite/newlib.iconv/iconvru.c b/newlib/testsuite/newlib.iconv/iconvru.c
new file mode 100644
index 0000000..7f02ebc
--- /dev/null
+++ b/newlib/testsuite/newlib.iconv/iconvru.c
@@ -0,0 +1,489 @@
+/*
+ * Copyright (c) 2003, Artem B. Bityuckiy, SoftMine Corporation.
+ * Rights transferred to Franklin Electronic Publishers.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include <iconv.h>
+#include <errno.h>
+#include <newlib.h>
+#include "check.h"
+
+#ifdef _ICONV_ENABLED
+
+#if defined(_ICONV_CONVERTER_UTF_8) || \
+ defined(_ICONV_CONVERTER_ISO_8859_5) || \
+ defined(_ICONV_CONVERTER_KOI8_R)
+
+#ifdef _ICONV_CONVERTER_ISO_8859_5
+char iso_8859_5[] =
+{
+ 0xbe,0xdf,0xd5,0xe0,0xd0,0xe2,0xde,0xe0,0xeb,0x20,
+ 0xd2,0x20,0xde,0xd4,0xdd,0xde,0xd9,0x20,0xe1,0xe2,
+ 0xe0,0xde,0xda,0xd5,0x20,0xd8,0xdc,0xd5,0xee,0xe2,
+ 0x20,0xde,0xd4,0xd8,0xdd,0xd0,0xda,0xde,0xd2,0xeb,
+ 0xd9,0x20,0xdf,0xe0,0xd8,0xde,0xe0,0xd8,0xe2,0xd5,
+ 0xe2,0x0a,0xc1,0xe2,0xe0,0xde,0xda,0xd8,0x20,0xe3,
+ 0xdf,0xde,0xe0,0xef,0xd4,0xde,0xe7,0xd5,0xdd,0xeb,
+ 0x20,0xdf,0xde,0x20,0xe3,0xd1,0xeb,0xd2,0xd0,0xdd,
+ 0xd8,0xee,0x20,0xdf,0xe0,0xd8,0xde,0xe0,0xd8,0xe2,
+ 0xd5,0xe2,0xde,0xd2,0x2e,0x0a,0x0a,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x20,0xb2,0xeb,0xdf,0xde,0xdb,
+ 0xdd,0xd5,0xdd,0xd8,0xd5,0x20,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x28,0x29,0x20,0x20,
+ 0x5b,0x5d,0x20,0x20,0x2d,0x3e,0x20,0x20,0x2e,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x21,
+ 0x20,0x20,0x20,0x7e,0x20,0x20,0x20,0x2b,0x2b,0x20,
+ 0x20,0x2d,0x2d,0x20,0x20,0x2b,0x20,0x20,0x2d,0x20,
+ 0x20,0x2a,0x20,0x20,0x26,0x20,0x20,0x28,0x74,0x79,
+ 0x70,0x65,0x29,0x20,0x20,0x73,0x69,0x7a,0x65,0x6f,
+ 0x66,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,
+ 0x3e,0x0a,0x2a,0x20,0x20,0x2f,0x20,0x20,0x25,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x2d,0x2d,0x2d,0x3e,0x0a,0x2b,0x20,0x20,0x2d,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x3c,0x3c,
+ 0x20,0x20,0x3e,0x3e,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,
+ 0x0a,0x3c,0x20,0x20,0x3c,0x3d,0x20,0x20,0x3e,0x20,
+ 0x20,0x3e,0x3d,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,
+ 0x2d,0x2d,0x3e,0x0a,0x3d,0x3d,0x20,0x20,0x21,0x3d,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x26,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,
+ 0x5e,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,
+ 0x2d,0x3e,0x0a,0x7c,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x26,0x26,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x7c,
+ 0x7c,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,
+ 0x3e,0x0a,0x3f,0x3a,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x3c,0x2d,0x2d,0x2d,0x20,0x20,0x20,0x0a,0x3d,0x20,
+ 0x20,0x2b,0x3d,0x20,0x20,0x2d,0x3d,0x20,0x20,0x2f,
+ 0x3d,0x20,0x20,0x25,0x3d,0x20,0x20,0x26,0x3d,0x20,
+ 0x20,0x5e,0x3d,0x20,0x20,0x7c,0x3d,0x20,0x20,0x3c,
+ 0x3c,0x3d,0x20,0x20,0x3e,0x3e,0x3d,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x3c,0x2d,0x2d,0x2d,
+ 0x0a,0x2c,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,
+ 0x2d,0x2d,0x3e,0x0a
+};
+#endif /* #ifdef _ICONV_CONVERTER_ISO_8859_5 */
+
+#ifdef _ICONV_CONVERTER_KOI8_R
+char koi8_r[] =
+{
+ 0xef,0xd0,0xc5,0xd2,0xc1,0xd4,0xcf,0xd2,0xd9,0x20,
+ 0xd7,0x20,0xcf,0xc4,0xce,0xcf,0xca,0x20,0xd3,0xd4,
+ 0xd2,0xcf,0xcb,0xc5,0x20,0xc9,0xcd,0xc5,0xc0,0xd4,
+ 0x20,0xcf,0xc4,0xc9,0xce,0xc1,0xcb,0xcf,0xd7,0xd9,
+ 0xca,0x20,0xd0,0xd2,0xc9,0xcf,0xd2,0xc9,0xd4,0xc5,
+ 0xd4,0x0a,0xf3,0xd4,0xd2,0xcf,0xcb,0xc9,0x20,0xd5,
+ 0xd0,0xcf,0xd2,0xd1,0xc4,0xcf,0xde,0xc5,0xce,0xd9,
+ 0x20,0xd0,0xcf,0x20,0xd5,0xc2,0xd9,0xd7,0xc1,0xce,
+ 0xc9,0xc0,0x20,0xd0,0xd2,0xc9,0xcf,0xd2,0xc9,0xd4,
+ 0xc5,0xd4,0xcf,0xd7,0x2e,0x0a,0x0a,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x20,0xf7,0xd9,0xd0,0xcf,0xcc,
+ 0xce,0xc5,0xce,0xc9,0xc5,0x20,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x28,0x29,0x20,0x20,
+ 0x5b,0x5d,0x20,0x20,0x2d,0x3e,0x20,0x20,0x2e,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x21,
+ 0x20,0x20,0x20,0x7e,0x20,0x20,0x20,0x2b,0x2b,0x20,
+ 0x20,0x2d,0x2d,0x20,0x20,0x2b,0x20,0x20,0x2d,0x20,
+ 0x20,0x2a,0x20,0x20,0x26,0x20,0x20,0x28,0x74,0x79,
+ 0x70,0x65,0x29,0x20,0x20,0x73,0x69,0x7a,0x65,0x6f,
+ 0x66,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,
+ 0x3e,0x0a,0x2a,0x20,0x20,0x2f,0x20,0x20,0x25,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x2d,0x2d,0x2d,0x3e,0x0a,0x2b,0x20,0x20,0x2d,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x3c,0x3c,
+ 0x20,0x20,0x3e,0x3e,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,
+ 0x0a,0x3c,0x20,0x20,0x3c,0x3d,0x20,0x20,0x3e,0x20,
+ 0x20,0x3e,0x3d,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,
+ 0x2d,0x2d,0x3e,0x0a,0x3d,0x3d,0x20,0x20,0x21,0x3d,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x26,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,
+ 0x5e,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,
+ 0x2d,0x3e,0x0a,0x7c,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x26,0x26,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x7c,
+ 0x7c,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,
+ 0x3e,0x0a,0x3f,0x3a,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x3c,0x2d,0x2d,0x2d,0x20,0x20,0x20,0x0a,0x3d,0x20,
+ 0x20,0x2b,0x3d,0x20,0x20,0x2d,0x3d,0x20,0x20,0x2f,
+ 0x3d,0x20,0x20,0x25,0x3d,0x20,0x20,0x26,0x3d,0x20,
+ 0x20,0x5e,0x3d,0x20,0x20,0x7c,0x3d,0x20,0x20,0x3c,
+ 0x3c,0x3d,0x20,0x20,0x3e,0x3e,0x3d,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x3c,0x2d,0x2d,0x2d,
+ 0x0a,0x2c,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,
+ 0x2d,0x2d,0x3e,0x0a
+};
+#endif /* #ifdef _ICONV_CONVERTER_KOI8_R */
+
+#ifdef _ICONV_CONVERTER_UTF_8
+char utf8[] =
+{
+ 0xd0,0x9e,0xd0,0xbf,0xd0,0xb5,0xd1,0x80,0xd0,0xb0,
+ 0xd1,0x82,0xd0,0xbe,0xd1,0x80,0xd1,0x8b,0x20,0xd0,
+ 0xb2,0x20,0xd0,0xbe,0xd0,0xb4,0xd0,0xbd,0xd0,0xbe,
+ 0xd0,0xb9,0x20,0xd1,0x81,0xd1,0x82,0xd1,0x80,0xd0,
+ 0xbe,0xd0,0xba,0xd0,0xb5,0x20,0xd0,0xb8,0xd0,0xbc,
+ 0xd0,0xb5,0xd1,0x8e,0xd1,0x82,0x20,0xd0,0xbe,0xd0,
+ 0xb4,0xd0,0xb8,0xd0,0xbd,0xd0,0xb0,0xd0,0xba,0xd0,
+ 0xbe,0xd0,0xb2,0xd1,0x8b,0xd0,0xb9,0x20,0xd0,0xbf,
+ 0xd1,0x80,0xd0,0xb8,0xd0,0xbe,0xd1,0x80,0xd0,0xb8,
+ 0xd1,0x82,0xd0,0xb5,0xd1,0x82,0x0a,0xd0,0xa1,0xd1,
+ 0x82,0xd1,0x80,0xd0,0xbe,0xd0,0xba,0xd0,0xb8,0x20,
+ 0xd1,0x83,0xd0,0xbf,0xd0,0xbe,0xd1,0x80,0xd1,0x8f,
+ 0xd0,0xb4,0xd0,0xbe,0xd1,0x87,0xd0,0xb5,0xd0,0xbd,
+ 0xd1,0x8b,0x20,0xd0,0xbf,0xd0,0xbe,0x20,0xd1,0x83,
+ 0xd0,0xb1,0xd1,0x8b,0xd0,0xb2,0xd0,0xb0,0xd0,0xbd,
+ 0xd0,0xb8,0xd1,0x8e,0x20,0xd0,0xbf,0xd1,0x80,0xd0,
+ 0xb8,0xd0,0xbe,0xd1,0x80,0xd0,0xb8,0xd1,0x82,0xd0,
+ 0xb5,0xd1,0x82,0xd0,0xbe,0xd0,0xb2,0x2e,0x0a,0x0a,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x20,0xd0,0x92,
+ 0xd1,0x8b,0xd0,0xbf,0xd0,0xbe,0xd0,0xbb,0xd0,0xbd,
+ 0xd0,0xb5,0xd0,0xbd,0xd0,0xb8,0xd0,0xb5,0x20,0x2d,
+ 0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x28,
+ 0x29,0x20,0x20,0x5b,0x5d,0x20,0x20,0x2d,0x3e,0x20,
+ 0x20,0x2e,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,
+ 0x3e,0x0a,0x21,0x20,0x20,0x20,0x7e,0x20,0x20,0x20,
+ 0x2b,0x2b,0x20,0x20,0x2d,0x2d,0x20,0x20,0x2b,0x20,
+ 0x20,0x2d,0x20,0x20,0x2a,0x20,0x20,0x26,0x20,0x20,
+ 0x28,0x74,0x79,0x70,0x65,0x29,0x20,0x20,0x73,0x69,
+ 0x7a,0x65,0x6f,0x66,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x2d,0x2d,0x2d,0x3e,0x0a,0x2a,0x20,0x20,0x2f,0x20,
+ 0x20,0x25,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x2b,0x20,
+ 0x20,0x2d,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,
+ 0x0a,0x3c,0x3c,0x20,0x20,0x3e,0x3e,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,
+ 0x2d,0x2d,0x3e,0x0a,0x3c,0x20,0x20,0x3c,0x3d,0x20,
+ 0x20,0x3e,0x20,0x20,0x3e,0x3d,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x3d,0x3d,0x20,
+ 0x20,0x21,0x3d,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,
+ 0x26,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,
+ 0x2d,0x3e,0x0a,0x5e,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x7c,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a,0x26,
+ 0x26,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,
+ 0x3e,0x0a,0x7c,0x7c,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x2d,0x2d,0x2d,0x3e,0x0a,0x3f,0x3a,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x3c,0x2d,0x2d,0x2d,0x20,0x20,0x20,
+ 0x0a,0x3d,0x20,0x20,0x2b,0x3d,0x20,0x20,0x2d,0x3d,
+ 0x20,0x20,0x2f,0x3d,0x20,0x20,0x25,0x3d,0x20,0x20,
+ 0x26,0x3d,0x20,0x20,0x5e,0x3d,0x20,0x20,0x7c,0x3d,
+ 0x20,0x20,0x3c,0x3c,0x3d,0x20,0x20,0x3e,0x3e,0x3d,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3c,
+ 0x2d,0x2d,0x2d,0x0a,0x2c,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x2d,0x2d,0x2d,0x3e,0x0a
+};
+#endif
+
+struct iconv_data
+{
+ int len;
+ char *name;
+ char *data;
+};
+
+#define CONVERSIONS 3
+
+struct iconv_data data[] =
+{
+#ifdef _ICONV_CONVERTER_ISO_8859_5
+ {sizeof(iso_8859_5), "ISO-8859-5", (char *)iso_8859_5},
+#endif
+#ifdef _ICONV_CONVERTER_KOI8_R
+ {sizeof(koi8_r), "KOI8-R", (char *)koi8_r},
+#endif
+#ifdef _ICONV_CONVERTER_UTF_8
+ {sizeof(utf8), "UTF-8", (char *)utf8},
+#endif
+ {0, NULL, NULL}
+};
+
+#define OUTBUF_LEN 1500
+char ob[OUTBUF_LEN];
+
+iconv_t descs[CONVERSIONS*CONVERSIONS];
+
+#define ERROR 0
+
+int main(int argc, char **argv)
+{
+ int i, j, k, d = 0;
+ size_t n;
+ char *outbuf, *inbuf;
+ int conversions = sizeof(data)/sizeof(struct iconv_data) - 1;
+
+ puts("RU iconv test");
+
+ for (i = 0; i < conversions; i++)
+ {
+ for (j = 0; j < conversions; j++)
+ {
+ descs[d] = iconv_open(data[j].name, data[i].name);
+ if (descs[d++] == (iconv_t)-1)
+ {
+ printf("iconv_open(%s, %s)\n", data[i].name, data[j].name);
+ perror("");
+ CHECK(ERROR);
+ }
+ }
+ }
+
+ d = 0;
+ for (i = 0; i < conversions; i++)
+ {
+ for (j = 0; j < conversions; j++)
+ {
+ size_t inbytes = data[i].len;
+ size_t outbytes = OUTBUF_LEN;
+ inbuf = data[i].data;
+ outbuf = (char *)ob;
+
+ if (iconv(descs[d], NULL, NULL, (char **)&outbuf, &outbytes) == (size_t)-1)
+ {
+ perror("Can't reset shift state");
+ CHECK(ERROR);
+ }
+
+ n = iconv(descs[d++], (const char **)&(inbuf), &inbytes,
+ (char **)&outbuf, &outbytes);
+ if (n == (size_t)-1)
+ {
+ printf("Conversion from %s to %s FAILED - iconv() "
+ "returned -1\n", data[i].name, data[j].name);
+ perror("");
+ CHECK(ERROR);
+ }
+
+ if (data[j].len != OUTBUF_LEN - outbytes)
+ {
+ printf("Conversion from %s to %s FAILED",
+ data[i].name, data[j].name);
+ printf(" - bad output buffer length (%d instead of %d)\n",
+ OUTBUF_LEN - outbytes, data[j].len);
+ CHECK(ERROR);
+ }
+
+ for (k = 0; k < data[j].len; k++)
+ {
+ if (ob[k] != data[j].data[k])
+ {
+ printf("Conversion from %s to %s FAILED",
+ data[i].name, data[j].name);
+ printf("Error: byte %d is wrong\n", k);
+ printf("outbuf value: %#x, inbuf value %#x, "
+ "right value: %#x\n",
+ (int)ob[k], (int)(data[i].data[k]),
+ (int)(data[j].data[k]));
+ CHECK(ERROR);
+ }
+ }
+
+ printf("iconv from %s to %s was successfully done\n",
+ data[i].name, data[j].name);
+
+ }
+ }
+
+ d = 0;
+ for (i = 0; i < conversions; i++)
+ for (j = 0; j < conversions; j++)
+ CHECK(iconv_close(descs[d++]) != -1);
+
+ exit(0);
+}
+
+#else /* #if defined(_ICONV_CONVERTER_UTF_8) || ... */
+int main(int argc, char **argv)
+{
+ puts("None of ISO-8859-5, KOI8-R and UTF-8 converters linked, SKIP test");
+ exit(0);
+}
+#endif /* #if defined(_ICONV_CONVERTER_UTF_8) || ... */
+
+#else /* #ifdef _ICONV_ENABLED */
+int main(int argc, char **argv)
+{
+ puts("iconv library is disabled, SKIP test");
+ exit(0);
+}
+#endif /* #ifdef _ICONV_ENABLED */
+