On Tue, 30 Nov 2010 15:34:45 +0200
Kalev Lember wrote:
On 11/30/2010 02:56 PM, Thomas Spura wrote:
> I do %filter_requires_in because of:
> rpm -i x86_64/python-visual-5.40-1.fc13.x86_64.rpm
> error: Failed dependencies:
> cvisualmodule.so.3()(64bit) is needed by
> python-visual-5.40-1.fc13.x86_64
>
> With %filter_provides_in I strip the cvisualmodule.so out, but this
> is still required, when leaving requires_in out. So I'm forced to do
> either both, or nothing...
>
> What excactly should %filter_requires_in do? I expect it to filter
> the *.so files, which are coming from %{python_sitearch}/.*\.so*,
> but not the requires that those *.so files have to other system
> libs.
%filter_requires_in prevents the matching files from being scanned for
requires.
The way dynamic linking works is that every elf binary has DT_NEEDED
entries for libraries it needs at runtime. RPM scripts extract that
info from binaries and store it in the RPM metadata. Now,
%filter_requires_in prevents the matching .so files from being
scanned by rpm dependency extracting scripts, so anything these .so
files might need will be lost.
> Currently %filter_requires_in leaves out the cvisualmodule.so AND
> the system libs, but I need the system libs as requires...
Try this:
%filter_from_requires /cvisualmodule\.so/d
This helps, thanks...
But I saw my method of filtering in other packages (don't know where
anymore). So that packages need changes too :(
Thanks Kalev,
Thomas