えぐち@エスアンドイー です。

>>> On Mon, 25 Jan 1999 00:32:26 +0900, matz / netlab.co.jp (Yukihiro Matsumoto) said:

matz> まつもと ゆきひろです
matz> 
matz> In message "[ruby-list:11689] Re: ruby 1.2.2 released"
matz>     on 99/01/24, EGUCHI Osamu <eguchi / shizuokanet.ne.jp> writes:
matz> |えぐち@エスアンドイー です。

matz> |1.2.3 が出るのであれば、それまでに freebsd2.x.x や sunos4.x.x 
matz> |のような古いタイプの shared-library でも、 --enable-shared が
matz> |有効にしてしまおうと思います。
matz> 
matz> でます.貢献に感謝します.

手を付けましたが、 'libruby.so' と言うフレーズが
そこかしこに見られるので、うかつな事をすると、
他のプラットホームに悪影響が出そうなので、慎重になっています。
#他のプラットホームで将来 shared-library 対応する時の
#ぢゃまにならない様に気を付ます。

具体的には、

 libruby.a  に対応するマクロの LIBRUBY_A
 libruby.so に対応するマクロの LIBRUBY_SO

を定義して 'libruby.a' と 'libruby.so' を置き換えた上で、
LIBRUBY_SO に .majir.minor 等の必要なプラットホームは、
それを補う形にしたいと思います。

matz> |この場合、 libruby.so.1.2  の様に、ライブラリファイル名に
matz> |
matz> |	libruby.so.${MAJOR}.${MINOR}
matz> |
matz> |の形で、リリース番号を含めますが。
matz> |
matz> |MAJOR=	1
matz> |MINOR=	2
matz> |
matz> |で良いでしょうか?
matz> 
matz> 多分.でも,気になるのは仮に1.2.4が出ちゃったときにはどうし
matz> たら良いかって点です.

1.2.4 の 4 は、上位互換が保たれるので無視する方向で
考えていました。
1.2.4 になってシンボルがなくなる事は、ないと考えたわけです。

matz> Linuxとかだとlibxxx.so.1.2.3なんてのもけっこう見掛けますが,
matz> SunOSのようなのではmajor.minorで意味がありますよね.gktとか
matz> どうやってるんでしょう.libtoolsを読めば良いんでしょうけど,
matz> ちょっとアレは大変なので.

libxxx.so.1.2.3 の形式の場合も、同じディレクトリに
libxxx.so.1.2.4 があれば、それが使われとの理解であっていますか?
sonos4.1.4 は、そういう挙動をします。
freebsd2.2.8 は、3 の桁は許しません。

libtools や X の xc/cf/config/xxxLib.rules を
参照しましたが、major.minor で管理する方向で考えています。

また、

   libruby.so.1.203
   libruby.so.102.3

とか、考えつきますね。
いっそ、

   libruby1.so.2.3

というものありですが、どうでしょうか?

	えぐち

#あ! hpux は .so ぢゃなくって .sl だ!