From: matz@... (Yukihiro Matsumoto) Date: 2000-02-04T11:58:53+09:00 Subject: [ruby-dev:9076] Re: [PATCH] OS/2 patch improved for 1.5.0 まつもと ゆきひろです In message "[ruby-dev:9066] Re: [PATCH] OS/2 patch improved for 1.5.0" on 00/02/04, kenn@hma.att.ne.jp writes: |まつもと> Makefile.inについて | |まつもと> オブジェクトファイルの拡張子が .obj になったんですね。make |まつもと> はまだそれに対応してないからこのパッチが必要なんですか? |まつもと> これは一時的なものですか? | |拡張子が .obj となるOMF オブジェクト形式にも対応した、ということです。 |で、この形式で出力する様にコンパイラオプションを設定すると、リンカは |OS/2 標準のlink386.exe が呼ばれ、結果としてさまざまな弊害が発生する、 |というのは奥西さんの発言にある通りです。 | |それでも OMF 形式にこだわるのは、(将来的な)ダイナミックローディングへ |の対応には、OS が標準でサポートする手段(DLL)を用いる方がいろいろな意味 |で障害が少ない、という考えに基づくものです。 ふむ、.objというフォーマットに対応すべきというのは理解できま した。で、makeが.objに対応してないんですね。これについてはど うしましょう。 SUFFIXESの追加くらいならどうということはないですが、毎回 extmk.rb で$(CC) を使ったコンパイルルールをMakefileに追加す るのも変な気がします。 |まつもと> etc/extconf.rbについて | |まつもと> -lsunのチェックを回避していますが、こんなことが本当に必要 |まつもと> なんですか? できればこういう特別扱いは避けたいので。 | |この辺りは、既に奥西さんが説明してくださっているので、パスするとして、 しかし、どうやって対応したらよいのかは不明ですね。 毎回存在しない(かもしれない)ライブラリを OS/2 ではチェックを 外すという解は拒否します。それはみなにとって負担が大きすぎま す(よって etc/extconf.rbのパッチは採用しません)。 そもそも warning がでるだけならチェックを回避せず全部リンク したらどうなんでしょう? なんてわけにはいかないのかな。 |まつもと> pty/pty.cについて | |まつもと> ソースコード上は seteuid しか登場していませんが、seteuid, |まつもと> setreuid, setresuidのいずれかがあれば十分なんですか? | |pty/pty.c の中に (snip) |てな部分があったので、seteuid,setreuid,setresuid のいずれかがあれば大 |丈夫、と思ったんですが… あ、見落としです。取り込みます。 というわけで、結局取り込まなかったのは Makefile.inのSUFFIXESの追加 etc/extconf.rbのOS/2対応 ext/extmk.rb.inの$(OBJ)に対するルールの追加 ですね。これらをどう対処するかは相談しましょう。 まつもと ゆきひろ /:|)