5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

OpenBSDで日本語環境設定

1 :RAF:2001/03/27(火) 15:44
誰か、できる人いないかな。

196 :itojun:04/07/09 13:50
citrusをOpenBSD-currentに入れる作業が進行中ですが、__RENAME()がないとかその他いいろな理由で進んでいません。もしcitrus patch(ちゃんとうごくやつ)を隠し持っているひとがいたら是非お送りください。

197 :名無しさん@お腹いっぱい。:04/07/10 13:32
神光臨?

198 :190 (1/1):04/07/11 21:26
>>196
どのへんが merge の障害なのか、議論のポインタを知らないので
役に立つかどうかは判りませんが、↓こちらに置きました。

http://sigsegv.s25.xrea.com/distfiles/citrus/OpenBSD/HEAD-citrus-20040710.tar.bz2

最新(2004/07/10) の OpenBSD / NetBSD 両 HEAD branchに同期済です。i386で
full buildが通ることと、昔のCitrus CVS repositoryにあったtest1, test2で
NetBSD-currentと結果の相違が無いことを確認してあります。

NetBSD から mergeしきれていないのは
1. usr.bin/locale
stringlist.h が無い、sys/queue.hなり使って書き直す必要あり。
2. wcsto(u)imax(3)
(u)intmax_tが無い、inttypes.h とか、c99 回りが整ってからでいいような。
くらいですかね。

199 :190 (2/3):04/07/11 21:27
この tar.bz2 には patch が2つ含まれます。 citrus.patch の方がメインで
kevlo AT openbsd DOT org 氏 (ttp://www.kevlo.org/citrus/index.html)

kurati 氏 (ttp://www.nurs.or.jp/~kurari/bsd/index.html)
が作成されてるモノと(__RENAME()とか__SETLOCALE_SOURCE__の扱い以外)
あんまり変わらないはず。

ただ↑だけでは binary compatibility 上
1. MB_LEN_MAX 1 -> 32
2. sys_{nerr,errlist} (EILSEQが追加になるので)
という問題が残りますので、対策として rename.patch を用意してあります。

rename.patch は NetBSD から __RENAME() を lint(1) への hack 含め、
一式貰ってくるという乱暴な方法なので、
OpenBSD 的にはそれはOKなのかちょっと疑問です(だから役に立ちそうもない)。

そもそもOpenBSD って結構頻繁に libc の major version が上がるのですけど、
citrus を import したタイミングで bump up できないのでしょうか?
それなら __RENAME() を持ってきたりする必要はないので、
citrus.patch を merge するだけで終りという認識なのですが。

200 :190 (3/3):04/07/11 21:29
それから、dlopen(3) はあんまり OpenBSD 的に好まれない気がするので、
locale module を dynamic loading するのでなく、libc に抱え込む
compile option (CITRUS_BUILD_LOADABLE_MODULE={yes,no}) が
citrus.patchには含まれています。
src/libc/citrus/citrus_module_data.h 辺りのファイルが追加になってます。

もし他に私が見落としている merge への blocker 等ありましたら
ご指摘下さい。

201 :itojun:04/07/12 12:35
ありがとうございます。patch拝見します。いまのところ障壁は
- citrus gettextが*.mo version 0しかサポートしていないのでportsが軒並動かない
- citrus iconvとたくさんのportsが仲悪い
ので上記2つはほぼ諦め状態。
LC_CTYPEについてはなぜかsinglebyteの非asciiがうまく動かん、tolower/upperとか古いASCII onlyのが使われちゃう、などの悩みをかかえています。
なんにせよpatchありがとうございます。openbsd developerに回覧して試してもらおうと思います。

202 :200:04/07/12 21:38
あああ、toupper/tolowerはこんなオチの様な気が...
Index: tolower_.c
===================================================================
RCS file: /home/cvs/OpenBSD/src/lib/libc/gen/tolower_.c,v
retrieving revision 1.7
diff -u -r1.7 tolower_.c
--- tolower_.c18 May 2004 02:05:52 -00001.7
+++ tolower_.c12 Jul 2004 20:16:23 -0000
@@ -53,7 +53,5 @@
int
tolower(int c)
{
-if ((unsigned int)c > 0177)
-return(c);
return((_tolower_tab_ + 1)[c]);
}
Index: toupper_.c
===================================================================
RCS file: /home/cvs/OpenBSD/src/lib/libc/gen/toupper_.c,v
retrieving revision 1.7
diff -u -r1.7 toupper_.c
--- toupper_.c18 May 2004 02:05:52 -00001.7
+++ toupper_.c12 Jul 2004 20:16:14 -0000
@@ -53,7 +53,5 @@
int
toupper(int c)
{
-if ((unsigned int)c > 0177)
-return(c);
return((_toupper_tab_ + 1)[c]);
}
家帰ったらもう一度検証してみます。

203 :200:04/07/12 23:07
今見てみたんですけど、今openbsd developerの方々の
作業ベースになっていると思われるkevlo氏のpatchもこのチェック入ったままですね。

toupper/tolowerはSUS読む限り、引数のintはunsigned charあるいはEOFとして
評価され、変換結果はlocale依存だから、>>202のpatchは必要ですね。
http://www.opengroup.org/onlinepubs/007908799/xsh/toupper.html

204 :200(1/2):04/07/13 00:29
修正を取り込みまして、20040712版↓
http://sigsegv.s25.xrea.com/distfiles/citrus/OpenBSD/HEAD-citrus-20040712.tar.bz2
en_US.ISO8859-15などでtoupper/tolowerが変換可能なことを確認しました。
20040710からの差分はこちら。

Index: include/ctype.h
===================================================================
--- include/ctype.h(revision 122)
+++ include/ctype.h(revision 125)
@@ -147,16 +147,16 @@

__CTYPE_INLINE int tolower(int c)
{
-if ((unsigned int)c > 0177)
+if ((unsigned int)c > 0xFFU)
return (c);
-return ((_tolower_tab_ + 1)[c]);
+return ((int)(_tolower_tab_ + 1)[c]);
}

__CTYPE_INLINE int toupper(int c)
{
-if ((unsigned int)c > 0177)
+if ((unsigned int)c > 0xFFU)
return (c);
-return ((_toupper_tab_ + 1)[c]);
+return ((int)(_toupper_tab_ + 1)[c]);
}

#if !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE)


205 :200(2/2):04/07/13 00:30
Index: lib/libc/gen/tolower_.c
===================================================================
--- lib/libc/gen/tolower_.c(revision 122)
+++ lib/libc/gen/tolower_.c(revision 125)
@@ -53,7 +53,7 @@
int
tolower(int c)
{
-if ((unsigned int)c > 0177)
+if ((unsigned int)c > 0xFFU)
return(c);
-return((_tolower_tab_ + 1)[c]);
+return((int)(_tolower_tab_ + 1)[c]);
}
Index: lib/libc/gen/toupper_.c
===================================================================
--- lib/libc/gen/toupper_.c(revision 122)
+++ lib/libc/gen/toupper_.c(revision 125)
@@ -53,7 +53,7 @@
int
toupper(int c)
{
-if ((unsigned int)c > 0177)
+if ((unsigned int)c > 0xFFU)
return(c);
-return((_toupper_tab_ + 1)[c]);
+return((int)(_toupper_tab_ + 1)[c]);
}


206 :名無しさん@お腹いっぱい。:04/07/21 19:05
ついに>>89氏のパッチがひのめをみるのかな?おめ

207 :名無しさん@お腹いっぱい。:04/08/27 19:18
8月25日付け?ちょっとわすれた。snapshotsをInstall。3.4のときみたいに
firefoxで、何もしないで日本語が見えた。3.6では日本語がサポートされるの
かしら。

208 :名無しさん@お腹いっぱい。:04/08/28 00:55
ID:0tqZ7vJx
ID:0tqZ7vJx
能無しデジタル土方どもは逝ってよし  市根よ

209 :名無しさん@お腹いっぱい。:04/08/28 00:56
ID:0tqZ7vJx
ID:0tqZ7vJx
能無しデジタル土方どもは逝ってよし  市根よ

210 :ほしゅあげ:04/11/23 09:52:16
あのう 日本語localeはどうなったのでせうか?



211 :名無しさん@お腹いっぱい。:04/11/24 02:01:58
OpenBSD には不要なので当分取り込まれることはなくなりました。

212 :名無しさん@お腹いっぱい。:04/12/21 00:00:14
nvi-m17nをportsからいれたら、
EXINIT, 1: set: the canna option may never be turned on
EXINIT, 1: set: the cannactrl option may never be turned on
と出て気持ち悪いです。

213 :名無しさん@お腹いっぱい。:04/12/22 00:33:17
これで治るよ。あるいは、FLAVOR=canna つきで作り直すか。

--- Makefile 24 Nov 2004 11:08:03 -0000 1.20
+++ Makefile 21 Dec 2004 15:22:31 -0000
@@ -39,9 +39,11 @@

PLIST= ${WRKDIR}/PLIST

+.if ${FLAVOR:L} == "canna"
CANNA_OPT.euc-jp=canna cannactrl cannakey=
CANNA_OPT.sjis=${CANNA_OPT.euc-jp}
CANNA_OPT.iso-2022-jp=${CANNA_OPT.euc-jp}
+.endif

AUTODETECT.euc-jp=jp
AUTODETECT.sjis=jp


214 :名無しさん@お腹いっぱい。:04/12/22 14:25:22
>>213 おお。ありがとうございます。なおりました。

# pkg_add /usr/ports/packages/alpha/all/cannaserver-3.5b2p1.tgz
# cannaserver
pid 16480 (cannaserver): unaligned access: va=0x167422d64 pc=0x12000f578 ra=0x12000f55c op=ldt
Bus error
こんどはこうなりますた。

215 :名無しさん@お腹いっぱい。:04/12/26 19:54:29
Alpahの環境ねぇから確認しようがねぇよ。

71 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)