[Bug 605423] Review Request: python-dulwich - A python implementation of the Git file formats and protocols

bugzilla at redhat.com bugzilla at redhat.com
Sun Sep 5 16:46:22 UTC 2010


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


https://bugzilla.redhat.com/show_bug.cgi?id=605423

--- Comment #10 from Christian Krause <chkr at plauener.de> 2010-09-05 12:46:19 EDT ---
Thanks for the new package. It looks good, unfortunately the trick with
"%global __find_provides %{_rpmconfigdir}/find-provides | grep -v -E
'_objects.so|_pack.so'" 
does not work (independently of "-E"):

rpm -qp --provides RPMS/i686/python-dulwich-0.6.1-1.fc13.i686.rpm 
_objects.so  
_pack.so  
python-dulwich = 0.6.1-1.fc13
python-dulwich(x86-32) = 0.6.1-1.fc13

I have investigated the issue a little bit and so far I haven't found any
references that the suggested syntax (use a pipe in the spec file) is actually
used anywhere else. 

Usually it is suggested to use an external script (see
http://fedoraproject.org/wiki/PackagingDrafts/FilteringAutomaticDependencies ).

I've tested the following:

- create the following file
SOURCES/dulwich-find-provides.sh:
-----------------------------------
#!/bin/sh

if [ -x /usr/lib/rpm/redhat/find-provides ] ; then
FINDPROV=/usr/lib/rpm/redhat/find-provides
else
FINDPROV=/usr/lib/rpm/find-provides
fi

$FINDPROV $* | sed -e '/\(_objects.so\|_pack.so\)/d'

-----------------------------------

- use the following in the spec file:
%global _use_internal_dependency_generator 0
%global __find_provides %{SOURCE1}
%global __find_requires %{_rpmconfigdir}/find-requires
[...]
%Source1:        dulwich-find-provides.sh

This will finally generate the correct requires / provides:

rpmbuild@:~$ rpm -qp --requires RPMS/i686/python-dulwich-0.6.1-1.fc12.i686.rpm 
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
/usr/bin/python  
libc.so.6  
libc.so.6(GLIBC_2.0)  
libc.so.6(GLIBC_2.1.3)  
libc.so.6(GLIBC_2.4)  
libpthread.so.0  
libpython2.6.so.1.0  
rpmlib(PayloadIsXz) <= 5.2-1
rpmbuild@:~$ rpm -qp --provides RPMS/i686/python-dulwich-0.6.1-1.fc12.i686.rpm 
python-dulwich = 0.6.1-1.fc12
python-dulwich(x86-32) = 0.6.1-1.fc12
rpmbuild@:~$ 

I'm sorry that I haven't fully tested this before...

P.S.:
http://fedoraproject.org/wiki/Common_Rpmlint_issues#private-shared-object-provides
should be fixed as well - I'll write tomspur a separate mail. ;-)

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the package-review mailing list