[Fedora-packaging] "Explicit requires" and "requiring base package"

Ville Skyttä ville.skytta at iki.fi
Wed Sep 2 19:05:00 UTC 2009

Ping, any comments on this?

On Saturday 02 May 2009, Ville Skyttä wrote:
> https://fedoraproject.org/wiki/Packaging/Guidelines#Explicit_Requires
>   Packages must not contain explicit Requires on libraries except when
>   absolutely necessary. [...]
> https://fedoraproject.org/wiki/Packaging/Guidelines#Requiring_Base_Package
>   Devel packages must require the base package using a fully versioned
>   dependency: Requires: %{name} = %{version}-%{release}. Usually,
> subpackages other than -devel should also require the base package using a
> fully versioned dependency.
> I think these two guidelines or their wording are more or less in conflict
> these days.  Most -devel packages do not "absolutely necessarily" need an
> explicit dependency on the base package because rpm automatically adds
> soname dependencies from symlinks in -devel to the corresponding shared lib
> in the main/lib package.  Ditto, many cases of other non-devel subpackages
> get automatic lib soname dependencies to the main/lib package.
> If the intent is to still require explicit deps like in "requiring base
> package" even though there are automatic ones that would usually work, just
> to be sure or for other reasons (possibility of compilation options,
> patchwork that affects some internal subpackages but not other -devel/lib
> package consumers), I think "requiring base packages" and "explicit
> requires" should be cross referenced noting that this is an exception and
> those explicit deps are indeed wanted.
> If not, IMO "requiring base package" should be softened so that it requires
> adding those explicit deps if no automatic ones are present, or just
> removed because that'd be redundant with "explicit requires" and the rest
> of the general dependency guidelines.

More information about the Fedora-packaging mailing list