鈴木です。
rpm-4.12 から external dependency generator は事実上廃止されています。
spec ファイルで external のを使うようにして、上書きしているパッケージ
もいくつかあるかと思いますが、動作の仕様が internal と全く同じになって
いますので、うまく動作しなくなっているものも有ると思います。
# Vineも結構前からデフォルトは internal dep gen です。
rpm-4.12 以降からは requires や provides をフィルタするためには、
find-{requires,provides} を上書きなどするのではなく、フィルタルールを
書いて internal dep gen に任せるようにすることになります。
一例として firefox の例をあげます。
これまでの spec ファイル
Source100: find-external-requires
AutoProv: 0
%define _use_internal_dependency_generator 0
%define __find_requires %{SOURCE100}
これからのspecファイル
# filter requires/provides
%global _privatelibs lib.*[.]so\\(.*
%global __requires_exclude ^(%{_privatelibs})$
%global __provides_exclude_from ^%{ffdir}/.*$
__requires_exclude と __provides_exclude で AutoReq/Prov で Requres/Provides
検出後のフィルタが行えます
__requires_exclude_from と __provides_exclude_from で AutoReq/Prov の
対象をフィルタすることができます。
firefox の例では
* /usr/lib*/firefox/ 以下にあるものについて自動 Provides を検出しない。
* lib.*[.]\(.* (libnss.so(*)(*) といったバージョンなしのsharedライブラリ) をフィルタ
とすることで、プライベートなライブラリをAutoProv/Req対象から除外しています。
https://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering
あたりが参考になるかとおもいます。
--
--
Daisuke SUZUKI | daisuke@{linux.or.jp,dicey.org,vinecaves.com}
GnuPG Fingerprint = A03C F34B 830F FFA2 A8D0 48BF 412C 29B8 C979 4DCB
GnuPG Fingerprint = 7DE6 9AC6 5E5B 1AF8 B38E 0992 90BF 4C09 7432 2CB0
Founder,President&CEO, Vine Caves Ltd. http://vinecaves.com/
Founder and President, Project Vine. http://vinelinux.org/
Founder and President, Japan Linux Association http://jla.linux.or.jp/
_______________________________________________
VineSeed mailing list
VineSeed@xxxxxxxxxxxxx
http://lists.vinelinux.org/mailman/listinfo/vineseed