I don't think there's any reason for libxml2-python to require /usr/lib/python2.4 i.e. this is bogus: Requires: %{_libdir}/python%(echo `python -c "import sys; print sys.version[0:3]"`)
I think python will automatically insert a "Requires: python(abi) = 2.4" ... which should be enough
Should not require ... why ? w.r.t. #1, maybe rpm in the build system of Fedora, on that peticuliar release may actually do the right thing. I want my source package to work on a variety of systems, that's the reason. So what is the reason why you want to get rid of this ? What error did you face, if none, sorry I won't change it :-) Daniel
/usr/lib/python2.4 just isn't something which is sane to require ... Sorry, I don't really have a good way of explain why not, right now ... but look at any other python package :) The specific problem was that using yum's "repotrack" to build a closed repo of packages which included libxml2-python ended up with KDE, gtk2 and others because the likes of kdebindings was accidently providing /usr/lib/python2.4 - see #196311 So, two bugs were conspiring together ... kdebindings providing /usr/lib/python2.4 and libxml2-python requiring it. Maybe I just need to get one of the Fedora packaging dudes on your ass :-P
If you need the specfile to work for other distros, you can use the dist tag set by the Fedora build system to do the right thing for Fedora and other things for other distros (though I don't see why requiring a directory that happens to be the install location for python is _ever_ the right thing) See http://fedoraproject.org/wiki/Packaging/DistTag; for distros that don't have 'python(abi)' you'd probably want to require just 'python >= 2.4' or some variation thereof
That was fixed in the last Fedora releases, like libxml2-2.6.29-1.fc7 Daniel