大きなソースをmakeしてrpmパッケージを作るときなど,幾つかのrpmパッケー ジに分割したくなることがよくあります. たとえば,muleのrpmパッケージをつくるときに,baseのrpmパッケージがelc を含んでいれば, そのソースであるelファイルはなくてもmuleの実行には問題 ないですから,mule.rpm と mule-el.rpm みたいにわけたほうがよいかもしれ ません. また,ライブラリや開発用インクルードファイルもソースに含ま れるアプリケーションをrpm化する時は,アプリ本体の hoge.rpm と,開発者 用にlibhoge.a や hoge.hを入れたhoge-devel.rpmにわけたいこともあるでしょう. ドキュメントが大きいと,hoge-docs.rpmも別に作りたいこともあるでしょう.
こういうときには,ちょっとspecファイルを変更するだけで, サブパッケージ
の作成をすることができます. 具体的には,サブパッケージ(ここでは,hoge
のサブパッケージhoge-docsとする)のための,データ定義部
(%package docsではじまり,GroupやSummary,
%description docsなどを書く部分)と,
そのサブパッケージにいれるファイルを列挙した
%files docs から始まるファイルリストを付け加えます.
具体例は,RPM-BUILD-HOWTOにもありますので,興味のある人はそちらを参照
してください.
ただし,次節でものべるように,サブパッケージの作成は必要最小限にとどめる よう心掛けましょう.