[Momonga-devel.ja:00197] Re: OmoiKondara の新オプション


かずひこです。

At Fri, 26 Jul 2002 00:44:30 +0900 (JST),
HOSONO Hidetomo wrote:

> ところで、ふと気付いたのですが、
> これって、バイナリパッケージが複数ある場合に
> バイナリパッケージの数だけmph-scanpackagesが実行されますよね?

あら、そうみたいですね。

> 見たところ、backup_rpms()の中で
(snip)
> というコードがあり、backup_rpms()がバイナリパッケージの数だけ
> 呼ばれるためのようなのですが、素人考えでは無駄っぽい気がします。

はい、無駄です。すみません。

> このようなコードにした意図を教えてくださいますか? > kazuhiko
> 特に「こうする必要がある」という理由がなければ
> scanpackages()みたいな関数でも定義しちゃえ、とか思ってるんですが…。

えーと、mph-scanpackages を 

"/usr/sbin/mph-scanpackages #{topdir}/#{$ARCH}"
"/usr/sbin/mph-scanpackages #{topdir}/noarch"

の二回呼ぶのは無駄だと思っていて、既存のコードのどこかにつっこむならあの
場所が一番コードの変更が少なくて済むかな、というだけの理由です。

なので、ぜひいい感じにしてくださいませ。

ところで、現在の OmoiKondara では、BuildPreReq のものが入っていなければ
sudo rpm -Uvh --force --nodeps でインストールしますが、この際にその入れ
るパッケージが Require (≠ BuildPreReq) するものが入っているかチェックし
ませんね。そのあたりも「可能な範囲で」追うようにするほうがいいようにも思
いますが、とりあえず sudo rpm -Uvh --force --nodeps の部分の前に
      exec_command "rpm #{rpmflg} --force --test #{pkgs.join ' '}"
      exec_command "sudo rpm #{rpmflg} --force --nodeps #{pkgs.join ' '}"
のように --test してみるように手元では改造してみました。

$ OmoiKondara -svS linc

--[rpm -Uvh --force --test /home/momonga/PKGS/noarch/gtk-doc-0.9-2k.noarch.rpm]--
error: failed dependencies:
        docbook-dtds is needed by gtk-doc-0.9-2k

--[sudo rpm -Uvh --force --nodeps /home/momonga/PKGS/noarch/gtk-doc-0.9-2k.noarch.rpm]--

みたいな感じでログに残ります。ここで failed dependencies が出ているよう
では BuildPreReq がまともかどうか保証されないわけで、何らかのチェックに
は使えるかな?
-- 
かずひこ@...
  ふぇみにん日記       http://www.fdiary.net/~kazuhiko/diary/
  GK Kyoto Inc.        http://www.gk-kyoto.com/
  Momonga Linux        http://www.momonga-linux.org/
  電子辞書オープンラボ http://openlab.jp/edict/
  電子書体オープンラボ http://openlab.jp/efont/