[Momonga-devel.ja:01704] specファイル中の%defineマクロについて


たかはたです。

最近になってまっさらの状態からビルドを始めようとすると、
specファイルの定義エラーがwarningとして表示されます。

mozilla-lang-pack.specをよく見ると、
Version:     %(rpm -q --qf '%%{version}' mozilla)
と書かれていて、mozillaがインストールされていることが前提にspecが
書かれていました

現状OmoiKondaraの動きとして、まず最初に全部のspecのチェックを行なう
ようになっていて、定義できないところがwarning/errorになります。

これと同じようなものが、jadetex.specの中にも
%define TeXdir %(cd `kpsewhich -expand-var '$TEXMFMAIN'`/../..; pwd)
と定義されていて、このkpsewhichが無いためにwarning。
そもそもここで定義しているTeXdirは/usrなので全く意味無し。

とはいえ、これらは動的にdefineなりをしていたために起きていて
放置されていた現象なので、
・原則%defineなどでは何かのコマンドの出力を使って、動的に定義をするのを止める。
・アーキテクチャで振り分けられるなら%ifarchなどを駆使する。
・packages.develに入っているものだけに依存する場合は、これに限らない。
という縛りを入れたいと思いますが、いかがでしょうか。


---
Masahiro Takahata
takahata@xxxxxxxxx