summaryrefslogtreecommitdiff
path: root/jni/iconv/man
diff options
context:
space:
mode:
authorJari Vetoniemi <jari.vetoniemi@indooratlas.com>2020-03-16 18:49:26 +0900
committerJari Vetoniemi <jari.vetoniemi@indooratlas.com>2020-03-30 00:39:06 +0900
commitfcbf63e62c627deae76c1b8cb8c0876c536ed811 (patch)
tree64cb17de3f41a2b6fef2368028fbd00349946994 /jni/iconv/man
Fresh start
Diffstat (limited to 'jni/iconv/man')
-rw-r--r--jni/iconv/man/Makefile69
-rw-r--r--jni/iconv/man/Makefile.in69
-rw-r--r--jni/iconv/man/iconv.1108
-rw-r--r--jni/iconv/man/iconv.1.html334
-rw-r--r--jni/iconv/man/iconv.392
-rw-r--r--jni/iconv/man/iconv.3.html209
-rw-r--r--jni/iconv/man/iconv_close.331
-rw-r--r--jni/iconv/man/iconv_close.3.html97
-rw-r--r--jni/iconv/man/iconv_open.3204
-rw-r--r--jni/iconv/man/iconv_open.3.html602
-rw-r--r--jni/iconv/man/iconv_open_into.347
-rw-r--r--jni/iconv/man/iconv_open_into.3.html120
-rwxr-xr-xjni/iconv/man/iconvctl.367
-rw-r--r--jni/iconv/man/iconvctl.3.html189
14 files changed, 2238 insertions, 0 deletions
diff --git a/jni/iconv/man/Makefile b/jni/iconv/man/Makefile
new file mode 100644
index 0000000..2d80999
--- /dev/null
+++ b/jni/iconv/man/Makefile
@@ -0,0 +1,69 @@
+# Makefile for libiconv/man
+
+#### Start of system configuration section. ####
+
+# Directories used by "make":
+srcdir = .
+
+# Directories used by "make install":
+prefix = /usr/local
+local_prefix = /usr/local
+exec_prefix = ${prefix}
+datarootdir = ${prefix}/share
+datadir = ${datarootdir}
+mandir = ${datarootdir}/man
+docdir = ${datarootdir}/doc/${PACKAGE}
+htmldir = ${docdir}
+
+# Programs used by "make":
+RM = rm -f
+
+
+# Programs used by "make install":
+INSTALL = /usr/bin/install -c
+INSTALL_PROGRAM = ${INSTALL}
+INSTALL_DATA = ${INSTALL} -m 644
+mkinstalldirs = $(SHELL) ../build-aux/mkinstalldirs
+
+#### End of system configuration section. ####
+
+SHELL = /bin/sh
+
+# Used by docdir.
+PACKAGE = libiconv
+
+all :
+
+install : force
+ if [ ! -d $(DESTDIR)$(mandir)/man1 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 ; fi
+ builddir="`pwd`"; cd $(srcdir) && for f in *.1 ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man1/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man1/$$f) ; done
+ if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man3 ; fi
+ builddir="`pwd`"; cd $(srcdir) && for f in *.3 ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man3/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man3/$$f) ; done
+ if [ ! -d $(DESTDIR)$(htmldir) ] ; then $(mkinstalldirs) $(DESTDIR)$(htmldir) ; fi
+ builddir="`pwd`"; cd $(srcdir) && for f in *.html ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(htmldir)/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(htmldir)/$$f) ; done
+
+install-strip : install
+
+installdirs : force
+ if [ ! -d $(DESTDIR)$(mandir)/man1 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 ; fi
+ if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man3 ; fi
+ if [ ! -d $(DESTDIR)$(htmldir) ] ; then $(mkinstalldirs) $(DESTDIR)$(htmldir) ; fi
+
+uninstall : force
+ cd $(srcdir) && for f in *.1 ; do echo $(RM) $(DESTDIR)$(mandir)/man1/$$f ; $(RM) $(DESTDIR)$(mandir)/man1/$$f ; done
+ cd $(srcdir) && for f in *.3 ; do echo $(RM) $(DESTDIR)$(mandir)/man3/$$f ; $(RM) $(DESTDIR)$(mandir)/man3/$$f ; done
+ cd $(srcdir) && for f in *.html ; do echo $(RM) $(DESTDIR)$(htmldir)/$$f ; $(RM) $(DESTDIR)$(htmldir)/$$f ; done
+
+check :
+
+mostlyclean :
+
+clean :
+
+distclean : force
+ $(RM) Makefile
+
+maintainer-clean : distclean
+
+force :
+
diff --git a/jni/iconv/man/Makefile.in b/jni/iconv/man/Makefile.in
new file mode 100644
index 0000000..a05e7af
--- /dev/null
+++ b/jni/iconv/man/Makefile.in
@@ -0,0 +1,69 @@
+# Makefile for libiconv/man
+
+#### Start of system configuration section. ####
+
+# Directories used by "make":
+srcdir = @srcdir@
+
+# Directories used by "make install":
+prefix = @prefix@
+local_prefix = /usr/local
+exec_prefix = @exec_prefix@
+datarootdir = @datarootdir@
+datadir = @datadir@
+mandir = @mandir@
+docdir = @docdir@
+htmldir = @htmldir@
+
+# Programs used by "make":
+RM = rm -f
+@SET_MAKE@
+
+# Programs used by "make install":
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+mkinstalldirs = $(SHELL) @top_srcdir@/build-aux/mkinstalldirs
+
+#### End of system configuration section. ####
+
+SHELL = /bin/sh
+
+# Used by docdir.
+PACKAGE = @PACKAGE@
+
+all :
+
+install : force
+ if [ ! -d $(DESTDIR)$(mandir)/man1 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 ; fi
+ builddir="`pwd`"; cd $(srcdir) && for f in *.1 ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man1/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man1/$$f) ; done
+ if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man3 ; fi
+ builddir="`pwd`"; cd $(srcdir) && for f in *.3 ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man3/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man3/$$f) ; done
+ if [ ! -d $(DESTDIR)$(htmldir) ] ; then $(mkinstalldirs) $(DESTDIR)$(htmldir) ; fi
+ builddir="`pwd`"; cd $(srcdir) && for f in *.html ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(htmldir)/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(htmldir)/$$f) ; done
+
+install-strip : install
+
+installdirs : force
+ if [ ! -d $(DESTDIR)$(mandir)/man1 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 ; fi
+ if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man3 ; fi
+ if [ ! -d $(DESTDIR)$(htmldir) ] ; then $(mkinstalldirs) $(DESTDIR)$(htmldir) ; fi
+
+uninstall : force
+ cd $(srcdir) && for f in *.1 ; do echo $(RM) $(DESTDIR)$(mandir)/man1/$$f ; $(RM) $(DESTDIR)$(mandir)/man1/$$f ; done
+ cd $(srcdir) && for f in *.3 ; do echo $(RM) $(DESTDIR)$(mandir)/man3/$$f ; $(RM) $(DESTDIR)$(mandir)/man3/$$f ; done
+ cd $(srcdir) && for f in *.html ; do echo $(RM) $(DESTDIR)$(htmldir)/$$f ; $(RM) $(DESTDIR)$(htmldir)/$$f ; done
+
+check :
+
+mostlyclean :
+
+clean :
+
+distclean : force
+ $(RM) Makefile
+
+maintainer-clean : distclean
+
+force :
+
diff --git a/jni/iconv/man/iconv.1 b/jni/iconv/man/iconv.1
new file mode 100644
index 0000000..6b85651
--- /dev/null
+++ b/jni/iconv/man/iconv.1
@@ -0,0 +1,108 @@
+.\" Copyright (c) Bruno Haible <bruno@clisp.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 3 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\" OpenGroup's Single Unix specification http://www.UNIX-systems.org/online.html
+.\" POSIX 2001 draft6
+.\"
+.TH ICONV 1 "March 31, 2007" "GNU" "Linux Programmer's Manual"
+.SH NAME
+iconv \- character set conversion
+.SH SYNOPSIS
+.nf
+iconv [\fIOPTION\fP...] [\fB\-f\fP \fIencoding\fP] [\fB\-t\fP \fIencoding\fP] [\fIinputfile\fP ...]
+iconv \fB\-l\fP
+.fi
+.SH DESCRIPTION
+The \fBiconv\fP program converts text from one encoding to another encoding.
+More precisely, it converts \fBfrom\fP the encoding given for the \fB\-f\fP
+option \fBto\fP the encoding given for the \fB\-t\fP option. Either of these
+encodings defaults to the encoding of the current locale. All the
+\fIinputfile\fPs are read and converted in turn; if no \fIinputfile\fP is
+given, the standard input is used. The converted text is printed to standard
+output.
+.PP
+The encodings permitted are system dependent. For the libiconv implementation,
+they are listed in the iconv_open(3) manual page.
+.PP
+Options controlling the input and output format:
+.TP
+\fB\-f\fP \fIencoding\fP, \fB\-\-from\-code=\fP\fIencoding\fP
+Specifies the encoding of the input.
+.TP
+\fB\-t\fP \fIencoding\fP, \fB\-\-to\-code=\fP\fIencoding\fP
+Specifies the encoding of the output.
+.PP
+Options controlling conversion problems:
+.TP
+\fB\-c\fP
+When this option is given, characters that cannot be converted are silently
+discarded, instead of leading to a conversion error.
+.TP
+\fB\-\-unicode\-subst=\fP\fIformatstring\fP
+When this option is given, Unicode characters that cannot be represented in
+the target encoding are replaced with a placeholder string that is constructed
+from the given \fIformatstring\fP, applied to the Unicode code point. The
+\fIformatstring\fP must be a format string in the same format as for the
+.I printf
+command or the
+.I printf()
+function, taking either no argument or exactly one unsigned integer argument.
+.TP
+\fB\-\-byte\-subst=\fP\fIformatstring\fP
+When this option is given, bytes in the input that are not valid in the source
+encoding are replaced with a placeholder string that is constructed from the
+given \fIformatstring\fP, applied to the byte's value. The \fIformatstring\fP
+must be a format string in the same format as for the
+.I printf
+command or the
+.I printf()
+function, taking either no argument or exactly one unsigned integer argument.
+.TP
+\fB\-\-widechar\-subst=\fP\fIformatstring\fP
+When this option is given, wide characters in the input that are not valid in
+the source encoding are replaced with a placeholder string that is constructed
+from the given \fIformatstring\fP, applied to the byte's value. The
+\fIformatstring\fP must be a format string in the same format as for the
+.I printf
+command or the
+.I printf()
+function, taking either no argument or exactly one unsigned integer argument.
+.PP
+Options controlling error output:
+.TP
+\fB\-s\fP, \fB\-\-silent\fP
+When this option is given, error messages about invalid or unconvertible
+characters are omitted, but the actual converted text is unaffected.
+.PP
+The \fBiconv \-l\fP or \fBiconv \-\-list\fP command lists the names of the
+supported encodings, in a system dependent format. For the libiconv
+implementation, the names are printed in upper case, separated by whitespace,
+and alias names of an encoding are listed on the same line as the encoding
+itself.
+.SH EXAMPLES
+.TP
+\fBiconv \-f ISO\-8859\-1 \-t UTF\-8\fP
+converts input from the old West-European encoding ISO\-8859\-1 to Unicode.
+.PP
+.nf
+\fBiconv \-f KOI8\-R \-\-byte\-subst="<0x%x>"\fP
+\fB \-\-unicode\-subst="<U+%04X>"\fP
+.fi
+.RS
+converts input from the old Russian encoding KOI8\-R to the locale encoding,
+substituting an angle bracket notation with hexadecimal numbers for invalid
+bytes and for valid but unconvertible characters.
+.RE
+.TP
+\fBiconv \-\-list\fP
+lists the supported encodings.
+.SH "CONFORMING TO"
+POSIX:2001
+.SH "SEE ALSO"
+.BR iconv_open (3),
+.BR locale (7)
diff --git a/jni/iconv/man/iconv.1.html b/jni/iconv/man/iconv.1.html
new file mode 100644
index 0000000..e944bf2
--- /dev/null
+++ b/jni/iconv/man/iconv.1.html
@@ -0,0 +1,334 @@
+<!-- Creator : groff version 1.18.1 -->
+<!-- CreationDate: Tue Jun 30 22:52:08 2009 -->
+<html>
+<head>
+<meta name="generator" content="groff -Thtml, see www.gnu.org">
+<meta name="Content-Style" content="text/css">
+<title>ICONV</title>
+</head>
+<body>
+
+<h1 align=center>ICONV</h1>
+<a href="#NAME">NAME</a><br>
+<a href="#SYNOPSIS">SYNOPSIS</a><br>
+<a href="#DESCRIPTION">DESCRIPTION</a><br>
+<a href="#EXAMPLES">EXAMPLES</a><br>
+<a href="#CONFORMING TO">CONFORMING TO</a><br>
+<a href="#SEE ALSO">SEE ALSO</a><br>
+
+<hr>
+<a name="NAME"></a>
+<h2>NAME</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>iconv &minus; character set conversion</p>
+</td>
+</table>
+<a name="SYNOPSIS"></a>
+<h2>SYNOPSIS</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<pre>iconv [<i>OPTION</i>...] [<b>&minus;f</b> <i>encoding</i>] [<b>&minus;t</b> <i>encoding</i>] [<i>inputfile</i> ...]
+iconv <b>&minus;l
+</b></pre>
+</td>
+</table>
+<a name="DESCRIPTION"></a>
+<h2>DESCRIPTION</h2>
+<!-- INDENTATION -->
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>The <b>iconv</b> program converts text from one encoding
+to another encoding. More precisely, it converts <b>from</b>
+the encoding given for the <b>&minus;f</b> option <b>to</b>
+the encoding given for the <b>&minus;t</b> option. Either of
+these encodings defaults to the encoding of the current
+locale. All the <i>inputfile</i>s are read and converted in
+turn; if no <i>inputfile</i> is given, the standard input is
+used. The converted text is printed to standard output.</p>
+<!-- INDENTATION -->
+<p>The encodings permitted are system dependent. For the
+libiconv implementation, they are listed in the
+iconv_open(3) manual page.</p>
+<!-- INDENTATION -->
+<p>Options controlling the input and output format:</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p><b>&minus;f</b> <i>encoding</i>,
+<b>&minus;&minus;from&minus;code=</b><i>encoding</i></p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>Specifies the encoding of the input.</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p><b>&minus;t</b> <i>encoding</i>,
+<b>&minus;&minus;to&minus;code=</b><i>encoding</i></p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>Specifies the encoding of the output.</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Options controlling conversion problems:</p>
+</td>
+</table>
+<!-- TABS -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="4" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="13%"></td>
+<td width="2%">
+
+<p><b>&minus;c</b></p>
+</td>
+<td width="5%"></td>
+<td width="77%">
+
+<p>When this option is given, characters that cannot be
+converted are silently discarded, instead of leading to a
+conversion error.</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+
+<p><b>&minus;&minus;unicode&minus;subst=</b><i>formatstring</i></p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>When this option is given, Unicode characters that cannot
+be represented in the target encoding are replaced with a
+placeholder string that is constructed from the given
+<i>formatstring</i>, applied to the Unicode code point. The
+<i>formatstring</i> must be a format string in the same
+format as for the <i>printf</i> command or the
+<i>printf()</i> function, taking either no argument or
+exactly one unsigned integer argument.</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+
+<p><b>&minus;&minus;byte&minus;subst=</b><i>formatstring</i></p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>When this option is given, bytes in the input that are
+not valid in the source encoding are replaced with a
+placeholder string that is constructed from the given
+<i>formatstring</i>, applied to the byte&rsquo;s value. The
+<i>formatstring</i> must be a format string in the same
+format as for the <i>printf</i> command or the
+<i>printf()</i> function, taking either no argument or
+exactly one unsigned integer argument.</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+
+<p><b>&minus;&minus;widechar&minus;subst=</b><i>formatstring</i></p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>When this option is given, wide characters in the input
+that are not valid in the source encoding are replaced with
+a placeholder string that is constructed from the given
+<i>formatstring</i>, applied to the byte&rsquo;s value. The
+<i>formatstring</i> must be a format string in the same
+format as for the <i>printf</i> command or the
+<i>printf()</i> function, taking either no argument or
+exactly one unsigned integer argument.</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Options controlling error output:</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p><b>&minus;s</b>, <b>&minus;&minus;silent</b></p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>When this option is given, error messages about invalid
+or unconvertible characters are omitted, but the actual
+converted text is unaffected.</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>The <b>iconv &minus;l</b> or <b>iconv
+&minus;&minus;list</b> command lists the names of the
+supported encodings, in a system dependent format. For the
+libiconv implementation, the names are printed in upper
+case, separated by whitespace, and alias names of an
+encoding are listed on the same line as the encoding
+itself.</p>
+</td>
+</table>
+<a name="EXAMPLES"></a>
+<h2>EXAMPLES</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p><b>iconv &minus;f ISO&minus;8859&minus;1 &minus;t
+UTF&minus;8</b></p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>converts input from the old West-European encoding
+ISO&minus;8859&minus;1 to Unicode.</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<pre><b>iconv &minus;f KOI8&minus;R &minus;&minus;byte&minus;subst=&quot;&lt;0x%x&gt;&quot;
+ &minus;&minus;unicode&minus;subst=&quot;&lt;U+%04X&gt;&quot;
+</b></pre>
+</td>
+</table>
+<!-- INDENTATION -->
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="20%"></td>
+<td width="79%">
+<p>converts input from the old Russian encoding KOI8&minus;R
+to the locale encoding, substituting an angle bracket
+notation with hexadecimal numbers for invalid bytes and for
+valid but unconvertible characters.</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p><b>iconv &minus;&minus;list</b></p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>lists the supported encodings.</p>
+</td>
+</table>
+<a name="CONFORMING TO"></a>
+<h2>CONFORMING TO</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>POSIX:2001</p>
+</td>
+</table>
+<a name="SEE ALSO"></a>
+<h2>SEE ALSO</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p><b>iconv_open</b>(3), <b>locale</b>(7)</p>
+</td>
+</table>
+<hr>
+</body>
+</html>
diff --git a/jni/iconv/man/iconv.3 b/jni/iconv/man/iconv.3
new file mode 100644
index 0000000..3c511ea
--- /dev/null
+++ b/jni/iconv/man/iconv.3
@@ -0,0 +1,92 @@
+.\" Copyright (c) Bruno Haible <bruno@clisp.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 3 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\" GNU glibc-2 source code and manual
+.\" OpenGroup's Single Unix specification http://www.UNIX-systems.org/online.html
+.\"
+.TH ICONV 3 "September 7, 2008" "GNU" "Linux Programmer's Manual"
+.SH NAME
+iconv \- perform character set conversion
+.SH SYNOPSIS
+.nf
+.B #include <iconv.h>
+.sp
+.BI "size_t iconv (iconv_t " cd ,
+.BI " const char* * " inbuf ", size_t * "inbytesleft ,
+.BI " char* * " outbuf ", size_t * "outbytesleft );
+.fi
+.SH DESCRIPTION
+The argument \fIcd\fP must be a conversion descriptor created using the
+function \fBiconv_open\fP.
+.PP
+The main case is when \fIinbuf\fP is not NULL and \fI*inbuf\fP is not NULL.
+In this case, the \fBiconv\fP function converts the multibyte sequence
+starting at \fI*inbuf\fP to a multibyte sequence starting at \fI*outbuf\fP.
+At most \fI*inbytesleft\fP bytes, starting at \fI*inbuf\fP, will be read.
+At most \fI*outbytesleft\fP bytes, starting at \fI*outbuf\fP, will be written.
+.PP
+The \fBiconv\fP function converts one multibyte character at a time, and for
+each character conversion it increments \fI*inbuf\fP and decrements
+\fI*inbytesleft\fP by the number of converted input bytes, it increments
+\fI*outbuf\fP and decrements \fI*outbytesleft\fP by the number of converted
+output bytes, and it updates the conversion state contained in \fIcd\fP.
+If the character encoding of the input is stateful, the \fBiconv\fP function
+can also convert a sequence of input bytes to an update of the conversion state
+without producing any output bytes; such input is called a \fIshift sequence\fP.
+The conversion can stop for four reasons:
+.PP
+1. An invalid multibyte sequence is encountered in the input. In this case
+it sets \fBerrno\fP to \fBEILSEQ\fP and returns (size_t)(\-1). \fI*inbuf\fP
+is left pointing to the beginning of the invalid multibyte sequence.
+.PP
+2. The input byte sequence has been entirely converted, i.e. \fI*inbytesleft\fP
+has gone down to 0. In this case \fBiconv\fP returns the number of
+non-reversible conversions performed during this call.
+.PP
+3. An incomplete multibyte sequence is encountered in the input, and the
+input byte sequence terminates after it. In this case it sets \fBerrno\fP to
+\fBEINVAL\fP and returns (size_t)(\-1). \fI*inbuf\fP is left pointing to the
+beginning of the incomplete multibyte sequence.
+.PP
+4. The output buffer has no more room for the next converted character. In
+this case it sets \fBerrno\fP to \fBE2BIG\fP and returns (size_t)(\-1).
+.PP
+A different case is when \fIinbuf\fP is NULL or \fI*inbuf\fP is NULL, but
+\fIoutbuf\fP is not NULL and \fI*outbuf\fP is not NULL. In this case, the
+\fBiconv\fP function attempts to set \fIcd\fP's conversion state to the
+initial state and store a corresponding shift sequence at \fI*outbuf\fP.
+At most \fI*outbytesleft\fP bytes, starting at \fI*outbuf\fP, will be written.
+If the output buffer has no more room for this reset sequence, it sets
+\fBerrno\fP to \fBE2BIG\fP and returns (size_t)(\-1). Otherwise it increments
+\fI*outbuf\fP and decrements \fI*outbytesleft\fP by the number of bytes
+written.
+.PP
+A third case is when \fIinbuf\fP is NULL or \fI*inbuf\fP is NULL, and
+\fIoutbuf\fP is NULL or \fI*outbuf\fP is NULL. In this case, the \fBiconv\fP
+function sets \fIcd\fP's conversion state to the initial state.
+.SH "RETURN VALUE"
+The \fBiconv\fP function returns the number of characters converted in a
+non-reversible way during this call; reversible conversions are not counted.
+In case of error, it sets \fBerrno\fP and returns (size_t)(\-1).
+.SH ERRORS
+The following errors can occur, among others:
+.TP
+.B E2BIG
+There is not sufficient room at \fI*outbuf\fP.
+.TP
+.B EILSEQ
+An invalid multibyte sequence has been encountered in the input.
+.TP
+.B EINVAL
+An incomplete multibyte sequence has been encountered in the input.
+.SH "CONFORMING TO"
+POSIX:2001
+.SH "SEE ALSO"
+.BR iconv_open (3),
+.BR iconvctl (3)
+.BR iconv_close (3)
diff --git a/jni/iconv/man/iconv.3.html b/jni/iconv/man/iconv.3.html
new file mode 100644
index 0000000..e46d433
--- /dev/null
+++ b/jni/iconv/man/iconv.3.html
@@ -0,0 +1,209 @@
+<!-- Creator : groff version 1.18.1 -->
+<!-- CreationDate: Tue Jun 30 22:52:08 2009 -->
+<html>
+<head>
+<meta name="generator" content="groff -Thtml, see www.gnu.org">
+<meta name="Content-Style" content="text/css">
+<title>ICONV</title>
+</head>
+<body>
+
+<h1 align=center>ICONV</h1>
+<a href="#NAME">NAME</a><br>
+<a href="#SYNOPSIS">SYNOPSIS</a><br>
+<a href="#DESCRIPTION">DESCRIPTION</a><br>
+<a href="#RETURN VALUE">RETURN VALUE</a><br>
+<a href="#ERRORS">ERRORS</a><br>
+<a href="#CONFORMING TO">CONFORMING TO</a><br>
+<a href="#SEE ALSO">SEE ALSO</a><br>
+
+<hr>
+<a name="NAME"></a>
+<h2>NAME</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>iconv &minus; perform character set conversion</p>
+</td>
+</table>
+<a name="SYNOPSIS"></a>
+<h2>SYNOPSIS</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<pre><b>#include &lt;iconv.h&gt;
+
+size_t iconv (iconv_t</b> <i>cd</i><b>,
+ const char* *</b> <i>inbuf</i><b>, size_t *</b> <i>inbytesleft</i><b>,
+ char* *</b> <i>outbuf</i><b>, size_t *</b> <i>outbytesleft</i><b>);
+</b></pre>
+</td>
+</table>
+<a name="DESCRIPTION"></a>
+<h2>DESCRIPTION</h2>
+<!-- INDENTATION -->
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>The argument <i>cd</i> must be a conversion descriptor
+created using the function <b>iconv_open</b>.</p>
+<!-- INDENTATION -->
+<p>The main case is when <i>inbuf</i> is not NULL and
+<i>*inbuf</i> is not NULL. In this case, the <b>iconv</b>
+function converts the multibyte sequence starting at
+<i>*inbuf</i> to a multibyte sequence starting at
+<i>*outbuf</i>. At most <i>*inbytesleft</i> bytes, starting
+at <i>*inbuf</i>, will be read. At most <i>*outbytesleft</i>
+bytes, starting at <i>*outbuf</i>, will be written.</p>
+<!-- INDENTATION -->
+<p>The <b>iconv</b> function converts one multibyte
+character at a time, and for each character conversion it
+increments <i>*inbuf</i> and decrements <i>*inbytesleft</i>
+by the number of converted input bytes, it increments
+<i>*outbuf</i> and decrements <i>*outbytesleft</i> by the
+number of converted output bytes, and it updates the
+conversion state contained in <i>cd</i>. If the character
+encoding of the input is stateful, the <b>iconv</b> function
+can also convert a sequence of input bytes to an update of
+the conversion state without producing any output bytes;
+such input is called a <i>shift sequence</i>. The conversion
+can stop for four reasons:</p>
+<!-- INDENTATION -->
+<p>1. An invalid multibyte sequence is encountered in the
+input. In this case it sets <b>errno</b> to <b>EILSEQ</b>
+and returns (size_t)(&minus;1). <i>*inbuf</i> is left
+pointing to the beginning of the invalid multibyte
+sequence.</p>
+<!-- INDENTATION -->
+<p>2. The input byte sequence has been entirely converted,
+i.e. <i>*inbytesleft</i> has gone down to 0. In this case
+<b>iconv</b> returns the number of non-reversible
+conversions performed during this call.</p>
+<!-- INDENTATION -->
+<p>3. An incomplete multibyte sequence is encountered in the
+input, and the input byte sequence terminates after it. In
+this case it sets <b>errno</b> to <b>EINVAL</b> and returns
+(size_t)(&minus;1). <i>*inbuf</i> is left pointing to the
+beginning of the incomplete multibyte sequence.</p>
+<!-- INDENTATION -->
+<p>4. The output buffer has no more room for the next
+converted character. In this case it sets <b>errno</b> to
+<b>E2BIG</b> and returns (size_t)(&minus;1).</p>
+<!-- INDENTATION -->
+<p>A different case is when <i>inbuf</i> is NULL or
+<i>*inbuf</i> is NULL, but <i>outbuf</i> is not NULL and
+<i>*outbuf</i> is not NULL. In this case, the <b>iconv</b>
+function attempts to set <i>cd</i>&rsquo;s conversion state
+to the initial state and store a corresponding shift
+sequence at <i>*outbuf</i>. At most <i>*outbytesleft</i>
+bytes, starting at <i>*outbuf</i>, will be written. If the
+output buffer has no more room for this reset sequence, it
+sets <b>errno</b> to <b>E2BIG</b> and returns
+(size_t)(&minus;1). Otherwise it increments <i>*outbuf</i>
+and decrements <i>*outbytesleft</i> by the number of bytes
+written.</p>
+<!-- INDENTATION -->
+<p>A third case is when <i>inbuf</i> is NULL or
+<i>*inbuf</i> is NULL, and <i>outbuf</i> is NULL or
+<i>*outbuf</i> is NULL. In this case, the <b>iconv</b>
+function sets <i>cd</i>&rsquo;s conversion state to the
+initial state.</p>
+</td>
+</table>
+<a name="RETURN VALUE"></a>
+<h2>RETURN VALUE</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>The <b>iconv</b> function returns the number of
+characters converted in a non-reversible way during this
+call; reversible conversions are not counted. In case of
+error, it sets <b>errno</b> and returns
+(size_t)(&minus;1).</p>
+</td>
+</table>
+<a name="ERRORS"></a>
+<h2>ERRORS</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>The following errors can occur, among others:</p>
+</td>
+</table>
+<!-- TABS -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="3" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="11%"></td>
+<td width="10%">
+
+<p><b>E2BIG</b></p>
+</td>
+<td width="77%">
+
+<p>There is not sufficient room at <i>*outbuf</i>.</p>
+</td>
+<tr valign="top" align="left">
+<td width="11%"></td>
+<td width="10%">
+
+<p><b>EILSEQ</b></p>
+</td>
+<td width="77%">
+
+<p>An invalid multibyte sequence has been encountered in
+the input.</p>
+</td>
+<tr valign="top" align="left">
+<td width="11%"></td>
+<td width="10%">
+
+<p><b>EINVAL</b></p>
+</td>
+<td width="77%">
+
+<p>An incomplete multibyte sequence has been encountered in
+the input.</p>
+</td>
+</table>
+<a name="CONFORMING TO"></a>
+<h2>CONFORMING TO</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>POSIX:2001</p>
+</td>
+</table>
+<a name="SEE ALSO"></a>
+<h2>SEE ALSO</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p><b>iconv_open</b>(3), <b>iconvctl</b>(3)
+<b>iconv_close</b>(3)</p>
+</td>
+</table>
+<hr>
+</body>
+</html>
diff --git a/jni/iconv/man/iconv_close.3 b/jni/iconv/man/iconv_close.3
new file mode 100644
index 0000000..1989268
--- /dev/null
+++ b/jni/iconv/man/iconv_close.3
@@ -0,0 +1,31 @@
+.\" Copyright (c) Bruno Haible <bruno@clisp.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 3 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\" GNU glibc-2 source code and manual
+.\" OpenGroup's Single Unix specification http://www.UNIX-systems.org/online.html
+.\"
+.TH ICONV_CLOSE 3 "March 31, 2007" "GNU" "Linux Programmer's Manual"
+.SH NAME
+iconv_close \- deallocate descriptor for character set conversion
+.SH SYNOPSIS
+.nf
+.B #include <iconv.h>
+.sp
+.BI "int iconv_close (iconv_t " cd );
+.fi
+.SH DESCRIPTION
+The \fBiconv_close\fP function deallocates a conversion descriptor \fIcd\fP
+previously allocated using \fBiconv_open\fP.
+.SH "RETURN VALUE"
+When successful, the \fBiconv_close\fP function returns 0. In case of error,
+it sets \fBerrno\fP and returns \-1.
+.SH "CONFORMING TO"
+POSIX:2001
+.SH "SEE ALSO"
+.BR iconv_open (3)
+.BR iconv (3)
diff --git a/jni/iconv/man/iconv_close.3.html b/jni/iconv/man/iconv_close.3.html
new file mode 100644
index 0000000..a393a03
--- /dev/null
+++ b/jni/iconv/man/iconv_close.3.html
@@ -0,0 +1,97 @@
+<!-- Creator : groff version 1.18.1 -->
+<!-- CreationDate: Tue Jun 30 22:52:08 2009 -->
+<html>
+<head>
+<meta name="generator" content="groff -Thtml, see www.gnu.org">
+<meta name="Content-Style" content="text/css">
+<title>ICONV_CLOSE</title>
+</head>
+<body>
+
+<h1 align=center>ICONV_CLOSE</h1>
+<a href="#NAME">NAME</a><br>
+<a href="#SYNOPSIS">SYNOPSIS</a><br>
+<a href="#DESCRIPTION">DESCRIPTION</a><br>
+<a href="#RETURN VALUE">RETURN VALUE</a><br>
+<a href="#CONFORMING TO">CONFORMING TO</a><br>
+<a href="#SEE ALSO">SEE ALSO</a><br>
+
+<hr>
+<a name="NAME"></a>
+<h2>NAME</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>iconv_close &minus; deallocate descriptor for character
+set conversion</p>
+</td>
+</table>
+<a name="SYNOPSIS"></a>
+<h2>SYNOPSIS</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<pre><b>#include &lt;iconv.h&gt;
+
+int iconv_close (iconv_t</b> <i>cd</i><b>);
+</b></pre>
+</td>
+</table>
+<a name="DESCRIPTION"></a>
+<h2>DESCRIPTION</h2>
+<!-- INDENTATION -->
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>The <b>iconv_close</b> function deallocates a conversion
+descriptor <i>cd</i> previously allocated using
+<b>iconv_open</b>.</p>
+</td>
+</table>
+<a name="RETURN VALUE"></a>
+<h2>RETURN VALUE</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>When successful, the <b>iconv_close</b> function returns
+0. In case of error, it sets <b>errno</b> and returns
+&minus;1.</p>
+</td>
+</table>
+<a name="CONFORMING TO"></a>
+<h2>CONFORMING TO</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>POSIX:2001</p>
+</td>
+</table>
+<a name="SEE ALSO"></a>
+<h2>SEE ALSO</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p><b>iconv_open</b>(3) <b>iconv</b>(3)</p>
+</td>
+</table>
+<hr>
+</body>
+</html>
diff --git a/jni/iconv/man/iconv_open.3 b/jni/iconv/man/iconv_open.3
new file mode 100644
index 0000000..4b964f4
--- /dev/null
+++ b/jni/iconv/man/iconv_open.3
@@ -0,0 +1,204 @@
+.\" Copyright (c) Bruno Haible <bruno@clisp.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 3 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\" GNU glibc-2 source code and manual
+.\" OpenGroup's Single Unix specification http://www.UNIX-systems.org/online.html
+.\"
+.TH ICONV_OPEN 3 "January 24, 2009" "GNU" "Linux Programmer's Manual"
+.SH NAME
+iconv_open \- allocate descriptor for character set conversion
+.SH SYNOPSIS
+.nf
+.B #include <iconv.h>
+.sp
+.BI "iconv_t iconv_open (const char* " tocode ", const char* " fromcode );
+.fi
+.SH DESCRIPTION
+The \fBiconv_open\fP function allocates a conversion descriptor suitable
+for converting byte sequences from character encoding \fIfromcode\fP to
+character encoding \fItocode\fP.
+.PP
+The values permitted for \fIfromcode\fP and \fItocode\fP and the supported
+combinations are system dependent. For the libiconv library, the following
+encodings are supported, in all combinations.
+.TP
+European languages
+.nf
+.fi
+ASCII, ISO\-8859\-{1,2,3,4,5,7,9,10,13,14,15,16},
+KOI8\-R, KOI8\-U, KOI8\-RU,
+CP{1250,1251,1252,1253,1254,1257}, CP{850,866,1131},
+Mac{Roman,CentralEurope,Iceland,Croatian,Romania},
+Mac{Cyrillic,Ukraine,Greek,Turkish},
+Macintosh
+.TP
+Semitic languages
+.nf
+.fi
+ISO\-8859\-{6,8}, CP{1255,1256}, CP862, Mac{Hebrew,Arabic}
+.TP
+Japanese
+.nf
+.fi
+EUC\-JP, SHIFT_JIS, CP932, ISO\-2022\-JP, ISO\-2022\-JP\-2, ISO\-2022\-JP\-1
+.TP
+Chinese
+.nf
+.fi
+EUC\-CN, HZ, GBK, CP936, GB18030, EUC\-TW, BIG5, CP950, BIG5\-HKSCS,
+BIG5\-HKSCS:2001, BIG5\-HKSCS:1999, ISO\-2022\-CN, ISO\-2022\-CN\-EXT
+.TP
+Korean
+.nf
+.fi
+EUC\-KR, CP949, ISO\-2022\-KR, JOHAB
+.TP
+Armenian
+.nf
+.fi
+ARMSCII\-8
+.TP
+Georgian
+.nf
+.fi
+Georgian\-Academy, Georgian\-PS
+.TP
+Tajik
+.nf
+.fi
+KOI8\-T
+.TP
+Kazakh
+.nf
+.fi
+PT154, RK1048
+.TP
+Thai
+.nf
+.fi
+TIS\-620, CP874, MacThai
+.TP
+Laotian
+.nf
+.fi
+MuleLao\-1, CP1133
+.TP
+Vietnamese
+.nf
+.fi
+VISCII, TCVN, CP1258
+.TP
+Platform specifics
+.nf
+.fi
+HP\-ROMAN8, NEXTSTEP
+.TP
+Full Unicode
+.nf
+.fi
+UTF\-8
+.nf
+.fi
+UCS\-2, UCS\-2BE, UCS\-2LE
+.nf
+.fi
+UCS\-4, UCS\-4BE, UCS\-4LE
+.nf
+.fi
+UTF\-16, UTF\-16BE, UTF\-16LE
+.nf
+.fi
+UTF\-32, UTF\-32BE, UTF\-32LE
+.nf
+.fi
+UTF\-7
+.nf
+.fi
+C99, JAVA
+.TP
+Full Unicode, in terms of \fBuint16_t\fP or \fBuint32_t\fP
+(with machine dependent endianness and alignment)
+.nf
+.fi
+UCS\-2\-INTERNAL, UCS\-4\-INTERNAL
+.TP
+Locale dependent, in terms of \fBchar\fP or \fBwchar_t\fP
+(with machine dependent endianness and alignment, and with semantics
+depending on the OS and the current LC_CTYPE locale facet)
+.nf
+.fi
+char, wchar_t
+.PP
+When configured with the option \fB\-\-enable\-extra\-encodings\fP, it also
+provides support for a few extra encodings:
+.TP
+European languages
+.nf
+CP{437,737,775,852,853,855,857,858,860,861,863,865,869,1125}
+.fi
+.TP
+Semitic languages
+.nf
+.fi
+CP864
+.TP
+Japanese
+.nf
+.fi
+EUC\-JISX0213, Shift_JISX0213, ISO\-2022\-JP\-3
+.TP
+Chinese
+.nf
+.fi
+BIG5\-2003 (experimental)
+.TP
+Turkmen
+.nf
+.fi
+TDS565
+.TP
+Platform specifics
+.nf
+.fi
+ATARIST, RISCOS\-LATIN1
+.PP
+The empty encoding name "" is equivalent to "char": it denotes the
+locale dependent character encoding.
+.PP
+When the string "//TRANSLIT" is appended to \fItocode\fP, transliteration
+is activated. This means that when a character cannot be represented in the
+target character set, it can be approximated through one or several characters
+that look similar to the original character.
+.PP
+When the string "//IGNORE" is appended to \fItocode\fP, characters that
+cannot be represented in the target character set will be silently discarded.
+.PP
+The resulting conversion descriptor can be used with \fBiconv\fP any number
+of times. It remains valid until deallocated using \fBiconv_close\fP.
+.PP
+A conversion descriptor contains a conversion state. After creation using
+\fBiconv_open\fP, the state is in the initial state. Using \fBiconv\fP
+modifies the descriptor's conversion state. (This implies that a conversion
+descriptor can not be used in multiple threads simultaneously.) To bring the
+state back to the initial state, use \fBiconv\fP with NULL as \fIinbuf\fP
+argument.
+.SH "RETURN VALUE"
+The \fBiconv_open\fP function returns a freshly allocated conversion
+descriptor. In case of error, it sets \fBerrno\fP and returns (iconv_t)(\-1).
+.SH ERRORS
+The following error can occur, among others:
+.TP
+.B EINVAL
+The conversion from \fIfromcode\fP to \fItocode\fP is not supported by the
+implementation.
+.SH "CONFORMING TO"
+POSIX:2001
+.SH "SEE ALSO"
+.BR iconv (3)
+.BR iconvctl (3)
+.BR iconv_close (3)
diff --git a/jni/iconv/man/iconv_open.3.html b/jni/iconv/man/iconv_open.3.html
new file mode 100644
index 0000000..9232f11
--- /dev/null
+++ b/jni/iconv/man/iconv_open.3.html
@@ -0,0 +1,602 @@
+<!-- Creator : groff version 1.18.1 -->
+<!-- CreationDate: Tue Jun 30 22:52:08 2009 -->
+<html>
+<head>
+<meta name="generator" content="groff -Thtml, see www.gnu.org">
+<meta name="Content-Style" content="text/css">
+<title>ICONV_OPEN</title>
+</head>
+<body>
+
+<h1 align=center>ICONV_OPEN</h1>
+<a href="#NAME">NAME</a><br>
+<a href="#SYNOPSIS">SYNOPSIS</a><br>
+<a href="#DESCRIPTION">DESCRIPTION</a><br>
+<a href="#RETURN VALUE">RETURN VALUE</a><br>
+<a href="#ERRORS">ERRORS</a><br>
+<a href="#CONFORMING TO">CONFORMING TO</a><br>
+<a href="#SEE ALSO">SEE ALSO</a><br>
+
+<hr>
+<a name="NAME"></a>
+<h2>NAME</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>iconv_open &minus; allocate descriptor for character set
+conversion</p>
+</td>
+</table>
+<a name="SYNOPSIS"></a>
+<h2>SYNOPSIS</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<pre><b>#include &lt;iconv.h&gt;
+
+iconv_t iconv_open (const char*</b> <i>tocode</i><b>, const char*</b> <i>fromcode</i><b>);
+</b></pre>
+</td>
+</table>
+<a name="DESCRIPTION"></a>
+<h2>DESCRIPTION</h2>
+<!-- INDENTATION -->
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>The <b>iconv_open</b> function allocates a conversion
+descriptor suitable for converting byte sequences from
+character encoding <i>fromcode</i> to character encoding
+<i>tocode</i>.</p>
+<!-- INDENTATION -->
+<p>The values permitted for <i>fromcode</i> and
+<i>tocode</i> and the supported combinations are system
+dependent. For the libiconv library, the following encodings
+are supported, in all combinations.</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>European languages</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>ASCII,
+ISO&minus;8859&minus;{1,2,3,4,5,7,9,10,13,14,15,16},
+KOI8&minus;R, KOI8&minus;U, KOI8&minus;RU,
+CP{1250,1251,1252,1253,1254,1257}, CP{850,866,1131},
+Mac{Roman,CentralEurope,Iceland,Croatian,Romania},
+Mac{Cyrillic,Ukraine,Greek,Turkish}, Macintosh</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Semitic languages</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>ISO&minus;8859&minus;{6,8}, CP{1255,1256}, CP862,
+Mac{Hebrew,Arabic}</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Japanese</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>EUC&minus;JP, SHIFT_JIS, CP932, ISO&minus;2022&minus;JP,
+ISO&minus;2022&minus;JP&minus;2,
+ISO&minus;2022&minus;JP&minus;1</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Chinese</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>EUC&minus;CN, HZ, GBK, CP936, GB18030, EUC&minus;TW,
+BIG5, CP950, BIG5&minus;HKSCS, BIG5&minus;HKSCS:2001,
+BIG5&minus;HKSCS:1999, ISO&minus;2022&minus;CN,
+ISO&minus;2022&minus;CN&minus;EXT</p>
+</td>
+</table>
+<!-- TABS -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="3" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="11%"></td>
+<td width="8%">
+
+<p>Korean</p>
+</td>
+<td width="79%">
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>EUC&minus;KR, CP949, ISO&minus;2022&minus;KR, JOHAB</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Armenian</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>ARMSCII&minus;8</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Georgian</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>Georgian&minus;Academy, Georgian&minus;PS</p>
+</td>
+</table>
+<!-- TABS -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="3" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="11%"></td>
+<td width="7%">
+
+<p>Tajik</p>
+</td>
+<td width="80%">
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>KOI8&minus;T</p>
+</td>
+</table>
+<!-- TABS -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="3" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="11%"></td>
+<td width="8%">
+
+<p>Kazakh</p>
+</td>
+<td width="79%">
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>PT154, RK1048</p>
+</td>
+</table>
+<!-- TABS -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="3" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="11%"></td>
+<td width="5%">
+
+<p>Thai</p>
+</td>
+<td width="82%">
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>TIS&minus;620, CP874, MacThai</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Laotian</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>MuleLao&minus;1, CP1133</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Vietnamese</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>VISCII, TCVN, CP1258</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Platform specifics</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>HP&minus;ROMAN8, NEXTSTEP</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Full Unicode</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>UTF&minus;8</p>
+<!-- INDENTATION -->
+<p>UCS&minus;2, UCS&minus;2BE, UCS&minus;2LE</p>
+<!-- INDENTATION -->
+<p>UCS&minus;4, UCS&minus;4BE, UCS&minus;4LE</p>
+<!-- INDENTATION -->
+<p>UTF&minus;16, UTF&minus;16BE, UTF&minus;16LE</p>
+<!-- INDENTATION -->
+<p>UTF&minus;32, UTF&minus;32BE, UTF&minus;32LE</p>
+<!-- INDENTATION -->
+<p>UTF&minus;7</p>
+<!-- INDENTATION -->
+<p>C99, JAVA</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Full Unicode, in terms of <b>uint16_t</b> or
+<b>uint32_t</b></p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>(with machine dependent endianness and alignment)</p>
+<!-- INDENTATION -->
+<p>UCS&minus;2&minus;INTERNAL,
+UCS&minus;4&minus;INTERNAL</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Locale dependent, in terms of <b>char</b> or
+<b>wchar_t</b></p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>(with machine dependent endianness and alignment, and
+with semantics depending on the OS and the current LC_CTYPE
+locale facet)</p>
+<!-- INDENTATION -->
+<p>char, wchar_t</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>When configured with the option
+<b>&minus;&minus;enable&minus;extra&minus;encodings</b>, it
+also provides support for a few extra encodings:</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>European languages</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<pre>CP{437,737,775,852,853,855,857,858,860,861,863,865,869,1125}
+</pre>
+</td>
+</table>
+<!-- INDENTATION -->
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Semitic languages</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>CP864</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Japanese</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>EUC&minus;JISX0213, Shift_JISX0213,
+ISO&minus;2022&minus;JP&minus;3</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Chinese</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>BIG5&minus;2003 (experimental)</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Turkmen</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>TDS565</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>Platform specifics</p></td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td>
+<td width="77%">
+<p>ATARIST, RISCOS&minus;LATIN1</p>
+</td>
+</table>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>The empty encoding name &quot;&quot; is equivalent to
+&quot;char&quot;: it denotes the locale dependent character
+encoding.</p>
+<!-- INDENTATION -->
+<p>When the string &quot;//TRANSLIT&quot; is appended to
+<i>tocode</i>, transliteration is activated. This means that
+when a character cannot be represented in the target
+character set, it can be approximated through one or several
+characters that look similar to the original character.</p>
+<!-- INDENTATION -->
+<p>When the string &quot;//IGNORE&quot; is appended to
+<i>tocode</i>, characters that cannot be represented in the
+target character set will be silently discarded.</p>
+<!-- INDENTATION -->
+<p>The resulting conversion descriptor can be used with
+<b>iconv</b> any number of times. It remains valid until
+deallocated using <b>iconv_close</b>.</p>
+<!-- INDENTATION -->
+<p>A conversion descriptor contains a conversion state.
+After creation using <b>iconv_open</b>, the state is in the
+initial state. Using <b>iconv</b> modifies the
+descriptor&rsquo;s conversion state. (This implies that a
+conversion descriptor can not be used in multiple threads
+simultaneously.) To bring the state back to the initial
+state, use <b>iconv</b> with NULL as <i>inbuf</i>
+argument.</p>
+</td>
+</table>
+<a name="RETURN VALUE"></a>
+<h2>RETURN VALUE</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>The <b>iconv_open</b> function returns a freshly
+allocated conversion descriptor. In case of error, it sets
+<b>errno</b> and returns (iconv_t)(&minus;1).</p>
+</td>
+</table>
+<a name="ERRORS"></a>
+<h2>ERRORS</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>The following error can occur, among others:</p>
+</td>
+</table>
+<!-- TABS -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="4" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="11%"></td>
+<td width="8%">
+
+<p><b>EINVAL</b></p>
+</td>
+<td width="1%"></td>
+<td width="77%">
+
+<p>The conversion from <i>fromcode</i> to <i>tocode</i> is
+not supported by the implementation.</p>
+</td>
+</table>
+<a name="CONFORMING TO"></a>
+<h2>CONFORMING TO</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p>POSIX:2001</p>
+</td>
+</table>
+<a name="SEE ALSO"></a>
+<h2>SEE ALSO</h2>
+<!-- INDENTATION -->
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td>
+<td width="89%">
+<p><b>iconv</b>(3) <b>iconvctl</b>(3)
+<b>iconv_close</b>(3)</p>
+</td>
+</table>
+<hr>
+</body>
+</html>
diff --git a/jni/iconv/man/iconv_open_into.3 b/jni/iconv/man/iconv_open_into.3
new file mode 100644
index 0000000..92c2d53
--- /dev/null
+++ b/jni/iconv/man/iconv_open_into.3
@@ -0,0 +1,47 @@
+.\" Copyright (c) Bruno Haible <bruno@clisp.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 3 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\" iconv.h
+.\"
+.TH ICONV_OPEN_INTO 3 "September 21, 2008" "GNU" "Linux Programmer's Manual"
+.SH NAME
+iconv_open_into \- initialize descriptor for character set conversion
+.SH SYNOPSIS
+.nf
+.B #include <iconv.h>
+.sp
+.BI "int iconv_open_into (const char* " tocode ", const char* " fromcode ","
+.BI " iconv_allocation_t* " resultp );
+.fi
+.SH DESCRIPTION
+The \fBiconv_open_into\fP function initializes a conversion descriptor suitable
+for converting byte sequences from character encoding \fIfromcode\fP to
+character encoding \fItocode\fP. The conversion descriptor is stored in the
+memory pointed to by \fIresultp\fP.
+.PP
+The values permitted for \fIfromcode\fP and \fItocode\fP are the same as for
+the function \fBiconv_open\fP.
+.PP
+After a successful return from this function, \fIresultp\fP can be be used
+as an \fBiconv_t\fP object with the \fBiconv\fP function.
+.SH "RETURN VALUE"
+The \fBiconv_open_into\fP function fills \fB*\fP\fIresultp\fP and returns 0 if
+it succeeds. In case of error, it sets \fBerrno\fP and returns \-1.
+.SH ERRORS
+The following error can occur, among others:
+.TP
+.B EINVAL
+The conversion from \fIfromcode\fP to \fItocode\fP is not supported by the
+implementation.
+.SH "CONFORMING TO"
+This function is implemented only in GNU libiconv and not in other \fBiconv\fP
+implementations. It is not backed by a standard. You can test for its presence
+through \fB(_LIBICONV_VERSION >= 0x010D)\fP.
+.SH "SEE ALSO"
+.BR iconv_open (3)
+.BR iconv (3)
diff --git a/jni/iconv/man/iconv_open_into.3.html b/jni/iconv/man/iconv_open_into.3.html
new file mode 100644
index 0000000..6ed9f08
--- /dev/null
+++ b/jni/iconv/man/iconv_open_into.3.html
@@ -0,0 +1,120 @@
+<html>
+<head>
+<meta name="generator" content="groff -Thtml, see www.gnu.org">
+<meta name="Content-Style" content="text/css">
+<title>ICONV_OPEN_INTO</title>
+</head>
+<body>
+
+<h1 align=center>ICONV_OPEN_INTO</h1>
+<a href="#NAME">NAME</a><br>
+<a href="#SYNOPSIS">SYNOPSIS</a><br>
+<a href="#DESCRIPTION">DESCRIPTION</a><br>
+<a href="#RETURN VALUE">RETURN VALUE</a><br>
+<a href="#ERRORS">ERRORS</a><br>
+<a href="#CONFORMING TO">CONFORMING TO</a><br>
+<a href="#SEE ALSO">SEE ALSO</a><br>
+
+<hr>
+<!-- Creator : groff version 1.17.2 -->
+<!-- CreationDate: Sun Sep 21 20:17:11 2008 -->
+<a name="NAME"></a>
+<h2>NAME</h2>
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+iconv_open_into - initialize descriptor for character set conversion</td></table>
+<a name="SYNOPSIS"></a>
+<h2>SYNOPSIS</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<pre><b>#include &lt;iconv.h&gt;
+
+int iconv_open_into (const char*</b> <i>tocode</i><b>, const char*</b> <i>fromcode</i><b>,
+ iconv_allocation_t*</b> <i>resultp</i><b>);
+</b></pre></td></table>
+<a name="DESCRIPTION"></a>
+<h2>DESCRIPTION</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+The <b>iconv_open_into</b> function initializes a conversion
+descriptor suitable for converting byte sequences from
+character encoding <i>fromcode</i> to character encoding
+<i>tocode</i>. The conversion descriptor is stored in the
+memory pointed to by <i>resultp</i>.</td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+The values permitted for <i>fromcode</i> and <i>tocode</i>
+are the same as for the function
+<b>iconv_open</b>.</td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+After a successful return from this function, <i>resultp</i>
+can be be used as an <b>iconv_t</b> object with the
+<b>iconv</b> function.</td></table>
+<a name="RETURN VALUE"></a>
+<h2>RETURN VALUE</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+The <b>iconv_open_into</b> function fills
+<b>*</b><i>resultp</i> and returns 0 if it succeeds. In case
+of error, it sets <b>errno</b> and returns -1.</td></table>
+<a name="ERRORS"></a>
+<h2>ERRORS</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+The following error can occur, among others:</td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<b>EINVAL</b></td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td><td width="79%">
+The conversion from <i>fromcode</i> to <i>tocode</i> is not
+supported by the implementation.</td></table>
+<a name="CONFORMING TO"></a>
+<h2>CONFORMING TO</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+This function is implemented only in GNU libiconv and not in
+other <b>iconv</b> implementations. It is not backed by a
+standard. You can test for its presence through
+<b>(_LIBICONV_VERSION &gt;= 0x010D)</b>.</td></table>
+<a name="SEE ALSO"></a>
+<h2>SEE ALSO</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<b>iconv_open</b>(3) <b>iconv</b>(3)</td></table>
+<hr>
+</body>
+</html>
diff --git a/jni/iconv/man/iconvctl.3 b/jni/iconv/man/iconvctl.3
new file mode 100755
index 0000000..6caf394
--- /dev/null
+++ b/jni/iconv/man/iconvctl.3
@@ -0,0 +1,67 @@
+.\" Copyright (c) Perry Rapp
+.\" Copyright (c) Bruno Haible <bruno@clisp.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 3 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\" iconv.h
+.\"
+.TH ICONVCTL 3 "March 31, 2007" "GNU" "Linux Programmer's Manual"
+.SH NAME
+iconvctl \- control iconv behavior
+.SH SYNOPSIS
+.nf
+.B #include <iconv.h>
+.sp
+.BI "int iconvctl (iconv_t " cd " , int " request ", void * " argument );
+.fi
+.SH DESCRIPTION
+The argument \fIcd\fP must be a conversion descriptor created using the
+function \fBiconv_open\fP.
+.PP
+\fBiconvctl\fP queries or adjusts the behavior of the \fBiconv\fP function,
+when invoked with the specified conversion descriptor, depending on the
+request value.
+.SH "REQUEST VALUES"
+The following are permissible values for the \fIrequest\fP parameter.
+.TP
+.B ICONV_TRIVIALP
+\fIargument\fP should be an \fBint *\fP which will receive 1 if the
+conversion is trivial, or 0 otherwise.
+.TP
+.B ICONV_GET_TRANSLITERATE
+\fIargument\fP should be an \fBint *\fP which will receive 1 if
+transliteration is enabled in the conversion, or 0 otherwise.
+.TP
+.B ICONV_SET_TRANSLITERATE
+\fIargument\fP should be a \fBconst int *\fP, pointing to an \fBint\fP value.
+A non-zero value is used to enable transliteration in the conversion. A zero
+value disables it.
+.TP
+.B ICONV_GET_DISCARD_ILSEQ
+\fIargument\fP should be an \fBint *\fP which will receive 1 if
+"illegal sequence discard and continue" is enabled in the conversion,
+or 0 otherwise.
+.TP
+.B ICONV_SET_DISCARD_ILSEQ
+\fIargument\fP should be a \fBconst int *\fP, pointing to an \fBint\fP value.
+A non-zero value is used to enable "illegal sequence discard and continue"
+in the conversion. A zero value disables it.
+.SH "RETURN VALUE"
+The \fBiconvctl\fP function returns 0 if it succeeds. In case of error, it sets
+\fBerrno\fP and returns \-1.
+.SH ERRORS
+The following errors can occur, among others:
+.TP
+.B EINVAL
+The request is invalid.
+.SH "CONFORMING TO"
+This function is implemented only in GNU libiconv and not in other \fBiconv\fP
+implementations. It is not backed by a standard. You can test for its presence
+through \fB(_LIBICONV_VERSION >= 0x0108)\fP.
+.SH "SEE ALSO"
+.BR iconv_open (3)
+.BR iconv (3)
diff --git a/jni/iconv/man/iconvctl.3.html b/jni/iconv/man/iconvctl.3.html
new file mode 100644
index 0000000..05f1529
--- /dev/null
+++ b/jni/iconv/man/iconvctl.3.html
@@ -0,0 +1,189 @@
+<html>
+<head>
+<meta name="generator" content="groff -Thtml, see www.gnu.org">
+<meta name="Content-Style" content="text/css">
+<title>ICONVCTL</title>
+</head>
+<body>
+
+<h1 align=center>ICONVCTL</h1>
+<a href="#NAME">NAME</a><br>
+<a href="#SYNOPSIS">SYNOPSIS</a><br>
+<a href="#DESCRIPTION">DESCRIPTION</a><br>
+<a href="#REQUEST VALUES">REQUEST VALUES</a><br>
+<a href="#RETURN VALUE">RETURN VALUE</a><br>
+<a href="#ERRORS">ERRORS</a><br>
+<a href="#CONFORMING TO">CONFORMING TO</a><br>
+<a href="#SEE ALSO">SEE ALSO</a><br>
+
+<hr>
+<!-- Creator : groff version 1.17.2 -->
+<!-- CreationDate: Mon Feb 2 16:48:48 2004 -->
+<a name="NAME"></a>
+<h2>NAME</h2>
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+iconvctl - control iconv behavior</td></table>
+<a name="SYNOPSIS"></a>
+<h2>SYNOPSIS</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<pre><b>#include &lt;iconv.h&gt;
+
+int iconvctl (iconv_t</b> <i>cd</i> <b>, int</b> <i>request</i><b>, void *</b> <i>argument</i><b>);
+</b></pre></td></table>
+<a name="DESCRIPTION"></a>
+<h2>DESCRIPTION</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+The argument <i>cd</i> must be a conversion descriptor
+created using the function <b>iconv_open</b>.</td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<b>iconvctl</b> queries or adjusts the behavior of the
+<b>iconv</b> function, when invoked with the specified
+conversion descriptor, depending on the request
+value.</td></table>
+<a name="REQUEST VALUES"></a>
+<h2>REQUEST VALUES</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+The following are permissible values for the <i>request</i>
+parameter.</td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<b>ICONV_TRIVIALP</b></td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td><td width="79%">
+<i>argument</i> should be an <b>int *</b> which will receive
+1 if the conversion is trivial, or 0 otherwise.</td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<b>ICONV_GET_TRANSLITERATE</b></td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td><td width="79%">
+<i>argument</i> should be an <b>int *</b> which will receive
+1 if transliteration is enabled in the conversion, or 0
+otherwise.</td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<b>ICONV_SET_TRANSLITERATE</b></td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td><td width="79%">
+<i>argument</i> should be a <b>const int *</b>, pointing to
+an <b>int</b> value. A non-zero value is used to enable
+transliteration in the conversion. A zero value disables
+it.</td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<b>ICONV_GET_DISCARD_ILSEQ</b></td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td><td width="79%">
+<i>argument</i> should be an <b>int *</b> which will receive
+1 if &quot;illegal sequence discard and continue&quot; is
+enabled in the conversion, or 0 otherwise.</td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<b>ICONV_SET_DISCARD_ILSEQ</b></td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td><td width="79%">
+<i>argument</i> should be a <b>const int *</b>, pointing to
+an <b>int</b> value. A non-zero value is used to enable
+&quot;illegal sequence discard and continue&quot; in the
+conversion. A zero value disables it.</td></table>
+<a name="RETURN VALUE"></a>
+<h2>RETURN VALUE</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+The <b>iconvctl</b> function returns 0 if it succeeds. In
+case of error, it sets <b>errno</b> and returns
+-1.</td></table>
+<a name="ERRORS"></a>
+<h2>ERRORS</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+The following errors can occur, among others:</td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<b>EINVAL</b></td></table>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="21%"></td><td width="79%">
+The request is invalid.</td></table>
+<a name="CONFORMING TO"></a>
+<h2>CONFORMING TO</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+This function is implemented only in GNU libiconv and not in
+other <b>iconv</b> implementations. It is not backed by a
+standard. You can test for its presence through
+<b>(_LIBICONV_VERSION &gt;= 0x0108)</b>.</td></table>
+<a name="SEE ALSO"></a>
+<h2>SEE ALSO</h2>
+
+<table width="100%" border=0 rules="none" frame="void"
+ cols="2" cellspacing="0" cellpadding="0">
+<tr valign="top" align="left">
+<td width="10%"></td><td width="90%">
+<b>iconv_open</b>(3), <b>iconv</b>(3)</td></table>
+<hr>
+</body>
+</html>