On Tue, 23 Sep 2008, Ralf Corsepius wrote:
On Tue, 2008-09-23 at 09:18 +0300, Panu Matilainen wrote:
The new rpm in rawhide adds ISA provides (ie the (x86-32) stuff")
automatically for all non-noarch packages (including subpackages), all
that's needed is rebuild. So every package rebuilt since rpm 4.5.90.x
landed in rawhide already has them.
The main use-cases for this feature are:
a) -devel package dependencies on other -devel packages
b) BuildRequires
c) manual dependencies for plugins and such
Which kinds of problems does this solve?
If it wasn't obvious from the list above...
a) foo-devel requires bar-devel. Currently bar-devel.i386 is sufficient to
satisfy foo-devel.x86_64 which is obviously not correct.
b) Similarly to a), BuildRequires: foo-devel. Currently, if you have
foo-devel.i386 installed and try to build for x86_64, it's considered
satisfied which is obviously not correct.
c) A package depends on a dlopen()'ed plugin, say "foo-plugin". The plugin
needs to be of compatible arch to work, quite obviously. The only way to
express this correctly right now is to use file dependencies on
%{_libdir}/something.
So far I don't see any. Conversely, AFAIU all this does, is to add more
incompatibilities, more rpmdb entries, all for information which already
is hidden somewhere else.
So you'd rather change all -devel and build dependencies to
%{_libdir}/libfoo.so file dependencies? And there's no incompatibility
here, specs remain backwards compatible as long as you use the conditional
%{?_isa} construct for this.
- Panu -
--
Fedora-packaging mailing list
Fedora-packaging@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/fedora-packaging