cygwin 1.7.1 で ja_JP.CP932 を使用可能にするパッチ

以下のパッチを当てて cygwin-1.7.1-1 をビルドし、その結果作成される cygwin1.dll を使用して LANG=ja_JP.CP932 に設定しておけば、Subversion の global-ignores: *~ は問題なく動作するようになりました。

diff -c cygwin-1.7.1-1.orig/newlib/libc/locale/locale.c cygwin-1.7.1-1/newlib/libc/locale/locale.c
*** cygwin-1.7.1-1.orig/newlib/libc/locale/locale.c	2009-10-20 17:16:33.001000000 +0900
--- cygwin-1.7.1-1/newlib/libc/locale/locale.c	2010-01-22 13:50:43.477347300 +0900
***************
*** 641,646 ****
--- 641,653 ----
  #endif /* _MB_EXTENDED_CHARSETS_WINDOWS */
  #endif
  	  break;
+ 	case 932:
+ 	  mbc_max = 2;
+ #ifdef _MB_CAPABLE
+ 	  l_wctomb = __sjis_wctomb;
+ 	  l_mbtowc = __sjis_mbtowc;
+ #endif
+ 	  break;
  	default:
  	  return NULL;
  	}


(1/25追記) 上記パッチを送って (Nayuta Taga - Please support CP932. (I have problem using subversion with SJIS)) 採用されたので、cygwin-1.7.2 から CP932 がサポートされる予定です。ついでに ja_JP.SJIS の時に nl_langinfo(CODESET) が "CP932" を返すような変更も導入されました。