* configure.in, win32/Makefile.sub (MISSING): added langinfo on mingw
and mswin. * encoding.c (rb_locale_charmap): use environments on mingw and mswin. * missing/langinfo.c (nl_langinfo_codeset): MS-Windows Japanese environment uses Windows-31J derived from Shift_JIS, not EUC-JP. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
9e99ce3831
commit
ece0628ebe
10
ChangeLog
10
ChangeLog
@ -1,3 +1,13 @@
|
|||||||
|
Thu Jan 15 13:10:09 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
|
* configure.in, win32/Makefile.sub (MISSING): added langinfo on mingw
|
||||||
|
and mswin.
|
||||||
|
|
||||||
|
* encoding.c (rb_locale_charmap): use environments on mingw and mswin.
|
||||||
|
|
||||||
|
* missing/langinfo.c (nl_langinfo_codeset): MS-Windows Japanese
|
||||||
|
environment uses Windows-31J derived from Shift_JIS, not EUC-JP.
|
||||||
|
|
||||||
Thu Jan 15 12:10:39 2009 NAKAMURA Usaku <usa@ruby-lang.org>
|
Thu Jan 15 12:10:39 2009 NAKAMURA Usaku <usa@ruby-lang.org>
|
||||||
|
|
||||||
* win32/Makefile.sub ($(INSNS), node_name.inc, known_errors.inc,
|
* win32/Makefile.sub ($(INSNS), node_name.inc, known_errors.inc,
|
||||||
|
@ -599,6 +599,7 @@ mingw*) LIBS="-lshell32 -lws2_32 $LIBS"
|
|||||||
rb_cv_binary_elf=no
|
rb_cv_binary_elf=no
|
||||||
rb_cv_negative_time_t=no
|
rb_cv_negative_time_t=no
|
||||||
ac_cv_func_fcntl=yes
|
ac_cv_func_fcntl=yes
|
||||||
|
AC_LIBOBJ([langinfo])
|
||||||
;;
|
;;
|
||||||
os2-emx*) LIBS="-lm $LIBS"
|
os2-emx*) LIBS="-lm $LIBS"
|
||||||
ac_cv_lib_dir_opendir=no;;
|
ac_cv_lib_dir_opendir=no;;
|
||||||
|
@ -1218,7 +1218,7 @@ rb_locale_charmap(VALUE klass)
|
|||||||
{
|
{
|
||||||
#if defined NO_LOCALE_CHARMAP
|
#if defined NO_LOCALE_CHARMAP
|
||||||
return rb_usascii_str_new2("ASCII-8BIT");
|
return rb_usascii_str_new2("ASCII-8BIT");
|
||||||
#elif defined __CYGWIN__
|
#elif defined _WIN32 || defined __CYGWIN__
|
||||||
const char *nl_langinfo_codeset(void);
|
const char *nl_langinfo_codeset(void);
|
||||||
const char *codeset = nl_langinfo_codeset();
|
const char *codeset = nl_langinfo_codeset();
|
||||||
char cp[sizeof(int) * 3 + 4];
|
char cp[sizeof(int) * 3 + 4];
|
||||||
@ -1231,8 +1231,6 @@ rb_locale_charmap(VALUE klass)
|
|||||||
char *codeset;
|
char *codeset;
|
||||||
codeset = nl_langinfo(CODESET);
|
codeset = nl_langinfo(CODESET);
|
||||||
return rb_usascii_str_new2(codeset);
|
return rb_usascii_str_new2(codeset);
|
||||||
#elif defined _WIN32
|
|
||||||
return rb_sprintf("CP%d", GetConsoleCP());
|
|
||||||
#else
|
#else
|
||||||
return Qnil;
|
return Qnil;
|
||||||
#endif
|
#endif
|
||||||
|
@ -36,7 +36,6 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#if defined _WIN32 || defined __CYGWIN__
|
#if defined _WIN32 || defined __CYGWIN__
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
int snprintf(char *, size_t, const char *, ...);
|
|
||||||
#if defined _WIN32
|
#if defined _WIN32
|
||||||
#define strncasecmp strnicmp
|
#define strncasecmp strnicmp
|
||||||
#endif
|
#endif
|
||||||
@ -49,6 +48,12 @@ int snprintf(char *, size_t, const char *, ...);
|
|||||||
* C/POSIX locale. Could as well one day
|
* C/POSIX locale. Could as well one day
|
||||||
* become "UTF-8". */
|
* become "UTF-8". */
|
||||||
|
|
||||||
|
#if defined _WIN32 || defined __CYGWIN__
|
||||||
|
#define JA_CODESET "Windows-31J"
|
||||||
|
#else
|
||||||
|
#define JA_CODESET "EUC-JP"
|
||||||
|
#endif
|
||||||
|
|
||||||
#define digit(x) ((x) >= '0' && (x) <= '9')
|
#define digit(x) ((x) >= '0' && (x) <= '9')
|
||||||
#define strstart(s, n) (strncasecmp(s, n, strlen(n)) == 0)
|
#define strstart(s, n) (strncasecmp(s, n, strlen(n)) == 0)
|
||||||
|
|
||||||
@ -94,7 +99,7 @@ nl_langinfo_codeset(void)
|
|||||||
if (strstart(l, "zh_TW")) return "Big5";
|
if (strstart(l, "zh_TW")) return "Big5";
|
||||||
if (strstart(l, "zh_HK")) return "Big5HKSCS"; /* no MIME charset */
|
if (strstart(l, "zh_HK")) return "Big5HKSCS"; /* no MIME charset */
|
||||||
if (strstart(l, "zh")) return "GB2312";
|
if (strstart(l, "zh")) return "GB2312";
|
||||||
if (strstart(l, "ja")) return "EUC-JP";
|
if (strstart(l, "ja")) return JA_CODESET;
|
||||||
if (strstart(l, "ko")) return "EUC-KR";
|
if (strstart(l, "ko")) return "EUC-KR";
|
||||||
if (strstart(l, "ru")) return "KOI8-R";
|
if (strstart(l, "ru")) return "KOI8-R";
|
||||||
if (strstart(l, "uk")) return "KOI8-U";
|
if (strstart(l, "uk")) return "KOI8-U";
|
||||||
|
@ -177,7 +177,7 @@ EXTLIBS =
|
|||||||
LIBS = oldnames.lib user32.lib advapi32.lib shell32.lib ws2_32.lib $(EXTLIBS)
|
LIBS = oldnames.lib user32.lib advapi32.lib shell32.lib ws2_32.lib $(EXTLIBS)
|
||||||
!endif
|
!endif
|
||||||
!if !defined(MISSING)
|
!if !defined(MISSING)
|
||||||
MISSING = acosh.obj cbrt.obj crypt.obj erf.obj lgamma_r.obj strlcat.obj strlcpy.obj tgamma.obj win32.obj
|
MISSING = acosh.obj cbrt.obj crypt.obj erf.obj lgamma_r.obj strlcat.obj strlcpy.obj tgamma.obj win32.obj langinfo.obj
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
ARFLAGS = -machine:$(MACHINE) -out:
|
ARFLAGS = -machine:$(MACHINE) -out:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user