From: Katsuyuki Komatsu Date: 1999-12-10T00:07:07+09:00 Subject: [ruby-list:19339] Re: BeOS binary (Re: Ruby 1.4.3 repacked) 小松です。 In the message of [ruby-list:19308] BeOS binary (Re: Ruby 1.4.3 repacked) on 1999/12/9 09:24:39 tenmei@maoh.office.ne.jp (Noriaki Harada) wrote: |[ruby-dev:8018]のパッチは今回のソースには適用されていなかったようです。 |結局手作業で変更部分を修正して make したのですが、今後も[ruby-dev:8018] |のパッチは本体には取り込まれる予定はないのでしょうか? いくつか懸念事項があったので、1.4.3では強く採用を働きかけません でした。 一つ目は、 [ruby-dev:7224] -Wl,-rpath on Linux (Re: Ruby 1.3.4-990625) のスレッドで話題になってた症状と同じく、BeOSでも-rpathを使うと LIBRARY_PATHに"."を入れても効果がありません。 それで、強制的に./libruby.soを使わせる方法 (LinuxではLD_PRELOAD) を探したのですが、みつかりませんでした。 これは、 ./configure --prefix=/boot/home/config とすればLIBRARY_PATHにデフォルトで/boot/home/config/libが入っている ので回避できるし、他の所にインストールした場合でもLIBRARY_PATH を変えれば済むので、やめちゃおうと思います。 二つ目は、[ruby-dev:8385]でも書きましたが、R4.5.2以前のリリースで 問題がでるかもしれない点です。 R4.5.2のIntel版しか持ってないので自分では確かめられないのが痛い ですが、-rpathを削ると問題なさそうな気がしてきました。 どなたか、R4.5.2以前のIntel版で問題ないかチェックしてくれると うれしいです。 # 採用率がupするかもしれないので、ChangeLogのエントリもつけておこう。 -- 小松克行 / Katsuyuki Komatsu Thu Dec 9 23:30:57 1999 Katsuyuki Komatsu * MANIFEST: add beos/GNUmakefile.in. * configure.in: support BeOS R4.5.2 (Intel). * beos/GNUmakefile.in: new file to support BeOS R4.5.2 (Intel). diff -pru2N ruby-1.4.3.dist/MANIFEST ruby-1.4.3/MANIFEST --- ruby-1.4.3.dist/MANIFEST Wed Dec 8 00:29:46 1999 +++ ruby-1.4.3/MANIFEST Wed Dec 8 01:47:13 1999 @@ -76,4 +76,5 @@ variable.c version.c version.h +beos/GNUmakefile.in cygwin/GNUmakefile.in ext/Setup diff -pru2N ruby-1.4.3.dist/beos/GNUmakefile.in ruby-1.4.3/beos/GNUmakefile.in --- ruby-1.4.3.dist/beos/GNUmakefile.in Thu Jan 1 09:00:00 1970 +++ ruby-1.4.3/beos/GNUmakefile.in Thu Oct 14 12:05:42 1999 @@ -0,0 +1,5 @@ +include Makefile + +all: $(LIBRUBY_SO) + +$(LIBRUBY_SO): miniruby$(EXEEXT) diff -pru2N ruby-1.4.3.dist/configure.in ruby-1.4.3/configure.in --- ruby-1.4.3.dist/configure.in Wed Dec 8 09:01:00 1999 +++ ruby-1.4.3/configure.in Thu Dec 9 23:30:57 1999 @@ -632,4 +632,5 @@ if test "$fat_binary" = yes ; then fi +FIRSTMAKEFILE="" LIBRUBY_A='lib$(RUBY_INSTALL_NAME).a' LIBRUBY='$(LIBRUBY_A)' @@ -648,4 +649,5 @@ if test "$host_os" = "beos"; then i586*) LDFLAGS="$LDFLAGS -L." + FIRSTMAKEFILE=GNUmakefile:beos/GNUmakefile.in ;; *) @@ -656,5 +658,4 @@ if test "$host_os" = "beos"; then fi -FIRSTMAKEFILE="" LIBRUBY_LDSHARED=$LDSHARED LIBRUBY_DLDFLAGS=$DLDFLAGS