第9章 依存情報の記述に関する詳細

9.1. Requires

Requires には、従来の Requires: だけではなく Requires(pre): などのように ( ) をつけて厳密に指定することもできるようになりました。

( ) の中には表9.1「Requires の ( ) の中で利用できるもの」にあるものが入ります。 ( ) の中に入る項目は 「スクリプト部」 のタグ等に対応しています。どの部分で必要になるかを書きます。

Requires( ): のように ( ) の中に何も書かなかった場合は、Requires: として扱われます。

( ) の中は、Requires(pre,preun,post,postun): のように , を用いることで複数を同時に指定できます。

表9.1 Requires の ( ) の中で利用できるもの

項目 対応するタグ等
pre %pre で必要になるもの
preun %preun で必要になるもの
post %post で必要になるもの
postun %postun で必要になるもの
prereq インストール時に必要になるもの
verify %verifyscript で必要になるもの
interp スクリプト部を解釈(interpret)するために必要になるもの
rpmlib rpmのデータベース等を扱うために必要なもの

Requires(pre): などを指定した場合には、インストール、アンインストールされる順番が保証されます。 指定されたパッケージは先にインストールされ、後にアンインストールされます。

prereq は pre,preun,post,postun などよりも曖昧な書き方ですが、以前 PreReq で書かれていたものを Requires に機械的に置き換える場合には利用できると思います。

rpmlib については、通常、build 時に自動的に追加されるものなので、特別な機能を利用するのでなければ、記述する必要はありません。

interp も、自動的に追加されますが、特別な shell などを利用する場合には記述しておいた方がよいでしょう。