[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[pbsd-mg2] Re: Happy New Year
> そうした場合、実際に PocketBSD 用に アプリケーションを開発するとき
> mg2,mccs,freetype など 機種名が欲しくなります。この場合本当は、
> uname で取れるのが望ましいと思います。
NetBSD の場合、uname -m で、MACHINE が、uname -p で MACHINE_ARCH がとれます。
機種依存部分は、描画関係のライブラリ (Xserver?) やデバイスドライバのイ
ンターフェースで隠してしまって、userland のバイナリは基本的に共通に動
くようにしておくのがいいんじゃないでしょうか。
もし、これが可能ならば、機種名は必要じゃないように思います。
NetBSD の uname -p (MACHINE_ARCH) は将来的に、mipseb (big endian) と
mipel (little endian) に別れるかもしれません。(ソースディレクトリは
mipseb/mipsel ともに mips を共有する状態のままです。)
> #define MACHINE_ARCH mips
> #define MACHINE mg2
>
> でもいいと思いますし、
>
> #define MACHINE_ARCH vr4100
> #define MACHINE mg2
>
> 当面 バイナリの互換性が 取れないと思いますから
> でもいいような気がします。
userland のバイナリの互換性の問題というのは、floating でしょうか。
soft-float 必須とし、NetBSD/mipsel バイナリとの互換性を諦めるとすると、
MACHINE_ARCH も変えた方が良いかもしれませんね。
floating なしの mipsel を表す良い名前ってないでしょうかね。
(vr4100 以外もありますよね?)
> (どちらかと言うと mips にしておいた方が無難かなぁ)
確かに悩むところだと思います。
> さらに、PocketBSD であること その機種名も 静的(define)/動的(uname)
> に知ることができないと困るでしょう。
困るでしょうか。ここはちょっと理由が良くわかりません。
> |sys/arch/mips はすでに存在するので、これは使えないです...
> |あと、CE マシンの MIPS には NEC VR じゃないヤツもあるようです。
> | どの程度違うか/同じかよくわからないんですけど。
>
> フィリップスの r3900 系 のチップが多いようですが、
> 周辺が別もののようですから、この際 考えなくていいのではないでしょうか。
MACHINE_ARCH は、CPU アーキテクチャおよび、userland のバイナリの互換性
を示すので、周辺はあまり関係ないと思います。
MACHINE の方には、当然関係ありますが…
--
soda