RHEL/CentOS/SL 5および6の単一のrpm仕様を記述しようとしています。この仕様はpython appを対象としているため、ビルドプロセスに違いはありません。ただし、RHEL/CentOS5では依存関係を1つ追加する必要があります。
El5のみの依存関係をどのように定義しますか?私は以下を試しました:
%if 0%{?redhat} == 5 || 0%{?centos} == 5
Requires: kmod-coretemp
%endif
機能しません(CentOS5でビルドしても、kmod-coretemp依存関係は追加されません)。
私も以下を試しました:
%if %{?dist} == "el5"
構文エラーを報告します。 distマクロが設定されていて、 'el5'が含まれているはずです。しかし、rpmのif条件の構文が何であるかわかりませんか? rpmguideに詳細な回答はありません。
Fedora wikiは、いつものように、パッケージ化に関する最良のガイドラインを提供します。 Packaging:DistTag ページをご覧ください。 %{el5}
変数と省略形の条件を使用して、EL5のパッケージをビルドするときに関連するRequire
行が使用されるようにすることができます。
%{?el5:Requires: kmod-coretemp}
パッケージ間の混乱を避けるために、バージョンフィールドにdist
タグを追加することをお勧めします。
Release: 1%{?dist}
Distタグの目的 を参照してください。