I've spent the last week to upgrade rpm from 4.8.0 to 4.9.0.
The package was submitted to Factory yesterday and is already
Besides some bug fixes and an update to a newer BerkeleyDB
library rpm-4.9.0 contains plugin architecture for dependency
generation. In older rpms, the internal dependency generator
was pretty much hardcoded in C, so we always used the old
external one to generate dependencies. With rpm-4.9.0, the
internal generator has become flexible enough so that we
can use it.
This means for you, that rpm will no longer use the %__find_provides
and %__find_requires macros. Some packages redefined those
macros to be able to filter the generated dependencies.
This will no longer work in rpm-4.9.0. Instead, support for
dependency filtering was added to rpm. You can now use
%define %__requires_exclude_from ^/foo.*bar
to tell rpm to ignore files matching the regexp when generating
requires (the $RPM_BUILD_ROOT is already stripped).
You can use
%define %__requires_exclude libfoo.*
to remove a generated dependency. The same is possible for
%__provides_ and %__supplements_.
As the generator definitions are now pluggable, I'll migrate them
from the rpm package into the corresponding packages in the next
days, i.e. the mono plugin definition into the mono package.
Have fun with rpm-4.9.0,
Michael Schroeder mls(a)suse.de
SUSE LINUX Products GmbH, GF Jeff Hawn, HRB 16746 AG Nuernberg
To unsubscribe, e-mail: opensuse-packaging+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-packaging+help(a)opensuse.org