[Momonga-devel.ja:00151] CPAN module パッケージのややお手軽生成


かずひこです。

http://smbd.homelinux.org/diary/20020720.html#p01
から
http://snap.shot.cx/971458614/
を参考に、Momonga Linux にあわせて多少いじったものを、tools/cpanflute に
cvs add してみました。ついでに、tools/ChangeLog も追加しました。tools/
をいじる人はできるだけつけるようにしてください。

詳しくは上記のサイトを読んでいただくとして、あらかじめダウンロードしてお
いたソース tarball に対して、

tools/cpanflute DBI-1.28.tar.gz

のようにやると、/tmp/cpan/spec/perl-DBI/perl-DBI.spec ができます。

ただし、やはりある程度の手作業は必要です。

1. Source0 の URI をちゃんと書く。

Source0: DBI-1.28.tar.gz
NoSource: 0

のようになってしましますので、OmoiKondara が取得できるように、http なり
ftp なりで取れる URI に書き直してください。

まあ、CPAN にある 02packages.details.txt.gz をもとに自動で作れないことも
なさそうですが...

Bundle::DBI                       11.02  T/TI/TIMB/DBI-1.28.tar.gz

↑こんなファイルなので、これをもとに
http://www.cpan.org/authors/id/T/TI/TIMB/DBI-1.28.tar.gz
とすればいいはず。もしこれをやるのなら、ついでに Antenna ファイルも生成
しちゃえばいいかもしれません。

Modified-Match: DBI-\d.*tar.gz.*(\d\d-\w\w\w-\d{4} \d\d:\d\d)

↑こんなの。

2. %doc がいいかげん。

%doc は、実際に存在しないファイル名を書いても rpm がエラーにならないので、
あらかじめよくありそうな

%doc Changes COPYING README* TODO

を指定しておきましたが、実際の tarball にあわせて適宜書き換えるべきでしょ
う。

3. ビルドしてみたらなにかエラーのようなものが...

Processing files: perl-DBI-1.28-1m
Finding  Provides: (using /usr/lib/rpm/find-provides)...
tr: too many arguments
Try `tr --help' for more information.
tr: too many arguments
Try `tr --help' for more information.
Finding  Requires: (using /usr/lib/rpm/find-requires)...

とか出るのですが、なぜ?

誰か分かる人がいたらぜひ直してください。

というわけで、あくまでひな形作成ツールと割り切るのなら、それなりに役に立
つかもしれません。
-- 
かずひこ@...
  ふぇみにん日記       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/