From: kenn@... Date: 2000-02-04T04:00:10+09:00 Subject: [ruby-dev:9066] Re: [PATCH] OS/2 patch improved for 1.5.0 長沢です。 ちょっと出張してまして、レスポンスが遅れました。 # いやぁ、サラリーマンみたい(^^;; #(いまいち自覚の無い奴 < わし) In the message "[ruby-dev:9051] Re: [PATCH] OS/2 patch improved for 1.5.0" "まつもと" == matz@netlab.co.jp (Yukihiro Matsumoto) wrote: まつもと> いくつか質問させてください。 まつもと> configure.inについて まつもと> 基本的にこのまま取り込もうと思います。共有ライブラリの拡張 まつもと> 子は .dll になったんですか? 「どうせダイナミックローディングには対応してないから、何だっていいや」 という私の手抜きの後始末です。すみませんm(__)m まつもと> Makefile.inについて まつもと> オブジェクトファイルの拡張子が .obj になったんですね。make まつもと> はまだそれに対応してないからこのパッチが必要なんですか? まつもと> これは一時的なものですか? 拡張子が .obj となるOMF オブジェクト形式にも対応した、ということです。 で、この形式で出力する様にコンパイラオプションを設定すると、リンカは OS/2 標準のlink386.exe が呼ばれ、結果としてさまざまな弊害が発生する、 というのは奥西さんの発言にある通りです。 それでも OMF 形式にこだわるのは、(将来的な)ダイナミックローディングへ の対応には、OS が標準でサポートする手段(DLL)を用いる方がいろいろな意味 で障害が少ない、という考えに基づくものです。 まつもと> etc/extconf.rbについて まつもと> -lsunのチェックを回避していますが、こんなことが本当に必要 まつもと> なんですか? できればこういう特別扱いは避けたいので。 この辺りは、既に奥西さんが説明してくださっているので、パスするとして、 まつもと> extmk.rb.inについて まつもと> これも .obj に対応してないためなんですよね。lib/mkmf.rb に まつもと> も同様の修正が必要ですか? checkout した lib/mkmf.rb には if File.exist?("depend") dfile = open("depend", "r") mfile.printf "###\n" while line = dfile.gets() mfile.printf "%s", line.gsub(/\.o/, ".#{$OBJEXT}" end dfile.close end てな部分があるので、$OBJEXT が適切に設定されていれば、ここで置換される と思います。 まつもと> pty/pty.cについて まつもと> ソースコード上は seteuid しか登場していませんが、seteuid, まつもと> setreuid, setresuidのいずれかがあれば十分なんですか? pty/pty.c の中に #ifndef HAVE_SETEUID # ifdef HAVE_SETREUID # define seteuid(e) setreuid(-1, (e)) # else /* NOT HAVE_SETREUID */ # ifdef HAVE_SETRESUID # define seteuid(e) setresuid(-1, (e), -1) # else /* NOT HAVE_SETRESUID */ /* I can't set euid. (;_;) */ # endif /* HAVE_SETRESUID */ # endif /* HAVE_SETREUID */ #endif /* NO_SETEUID */ てな部分があったので、seteuid,setreuid,setresuid のいずれかがあれば大 丈夫、と思ったんですが… 長沢 研二 - HGF01572@nifty.ne.jp - - kenn@hma.att.ne.jp - /// Team OS/2 J at HAMAMATSU ///