On Tue, Nov 30, 2010 at 03:34:45PM +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
<nod>, that's a better recommendation for the guidelines to be making
for
its examples. I'll put that into a new draft in a moment.
-Toshio