BytesToUnicode.java (getDefaultDecoder): Let default decoder use iconv.
* gnu/gcj/convert/BytesToUnicode.java (getDefaultDecoder): Let default decoder use iconv. * gnu/gcj/convert/UnicodeToBytes.java (getDefaultEncoder): Let default encoder use iconv. * configure: Rebuilt. * configure.in: Check for nl_langinfo and <langinfo.h>. * java/lang/natSystem.cc (file_encoding): New function. (DEFAULT_FILE_ENCODING): Define to file_encoding() if possible. From-SVN: r36306
This commit is contained in:
parent
56cb97339b
commit
fe5e3b9714
7 changed files with 357 additions and 238 deletions
|
@ -24,6 +24,10 @@ details. */
|
|||
#include <sys/utsname.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_LANGINFO_H
|
||||
#include <langinfo.h>
|
||||
#endif
|
||||
|
||||
#include <gcj/cni.h>
|
||||
#include <jvm.h>
|
||||
#include <java-props.h>
|
||||
|
@ -151,9 +155,26 @@ java::lang::System::identityHashCode (jobject obj)
|
|||
return _Jv_HashCode (obj);
|
||||
}
|
||||
|
||||
#if ! defined (DEFAULT_FILE_ENCODING) && defined (HAVE_ICONV) \
|
||||
&& defined (HAVE_NL_LANGINFO)
|
||||
|
||||
static char *
|
||||
file_encoding ()
|
||||
{
|
||||
setlocale (LC_CTYPE, "");
|
||||
char *e = nl_langinfo (CODESET);
|
||||
if (e == NULL || *e == '\0')
|
||||
e = "8859_1";
|
||||
}
|
||||
|
||||
#define DEFAULT_FILE_ENCODING file_encoding ()
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef DEFAULT_FILE_ENCODING
|
||||
#define DEFAULT_FILE_ENCODING "8859_1"
|
||||
#endif
|
||||
|
||||
static char *default_file_encoding = DEFAULT_FILE_ENCODING;
|
||||
|
||||
#if HAVE_GETPWUID_R
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue