From: Derrick M. <d2...@pe...> - 2003-07-29 14:15:27
|
I've been trying to get more of Redhat 9 to work... The RPM dependency calculation failed for a few RPMs. This is what I had to do: There are multiple RPMs that provide things like "kernel". I removed the following RPMs to work around the problem. Is there a way to tell umlbuilder to ignore these RPMs? Or simply tell it which one to use? compat-gcc-c++-7.3-2.96.118.i386.rpm kernel-2.4.20-8.athlon.rpm kernel-2.4.20-8.i686.rpm kernel-bigmem-2.4.20-8.i686.rpm kernel-smp-2.4.20-8.athlon.rpm kernel-smp-2.4.20-8.i686.rpm There was also a problem with RPMs that had version strings starting with non-digits, ie. "alpha" or "v3.0". "cdparanoia" and "kinput2" are two such packages in Redhat9. The following patch fixes the problem. --- pkg_collection.py.org 2003-07-28 21:28:28.000000000 -0400 +++ pkg_collection.py 2003-07-28 23:17:35.000000000 -0400 @@ -4,7 +4,6 @@ import os import string import sys -import fnmatch import time import re import md5 @@ -276,7 +275,7 @@ if package in self.rpms: return package # we throw away all provides except those actually required # so this function needs to look in original filename list - c=filter(lambda x,p=package: fnmatch.fnmatchcase(x, p+"-[0-9]*"), self.rpms) + c=filter(lambda x,p=package: re.match("^"+re.escape(p)+"-[^-]*-[^-]*$", x), self.rpms) c.sort() if len(c)<1: # suse doesn't use numbered rpms |