1 --- rpm-5.4.15.org/scripts/pythoneggs.py 2012-05-08 00:39:11.000000000 +0200
2 +++ rpm-5.4.15/scripts/pythoneggs.py 2018-09-27 10:32:34.661059061 +0200
3 @@ -16,7 +16,8 @@ from pkg_resources import Distribution,
4 from distutils.sysconfig import get_python_lib
5 from subprocess import Popen, PIPE, STDOUT
11 opts, args = getopt(argv[1:], 'hPRSCOEb:',
12 ['help', 'provides', 'requires', 'suggests', 'conflicts', 'obsoletes', 'extras','buildroot='])
13 @@ -29,6 +30,13 @@ Obsoletes = False
17 +def make_pldver(raw):
18 + if re.match(r'^[0-9\.]+$', raw) == None:
19 + pldver = re.sub(r'([\d\.]+)(.+)', r'\1-0.\2', raw)
25 if o in ('-h', '--help'):
26 print '-h, --help\tPrint help'
27 @@ -125,11 +133,14 @@ for f in files:
28 if not name in py_deps:
30 py_deps[name].append(('==', dist.py_version))
31 - name = 'pythonegg(%s)' % dist.key
32 + if dist.py_version .split(".")[0] == '3':
33 + name = 'python3egg(%s)' % dist.key
35 + name = 'pythonegg(%s)' % dist.key
36 if not name in py_deps:
39 - spec = ('==', dist.version)
40 + spec = ('==', make_pldver(dist.version))
41 if not spec in py_deps[name]:
42 py_deps[name].append(spec)
43 if Requires or (Suggests and dist.extras):
44 @@ -145,6 +156,14 @@ for f in files:
45 spec = ('==', dist.py_version)
46 if not spec in py_deps[name]:
47 py_deps[name].append(spec)
48 + # fake python version for dist.requires(), so deps like
49 + # [:python_version < '3']
51 + # will be handled correctly
52 + old_python_version = platform.python_version
53 + def new_python_version():
54 + return dist.py_version
55 + platform.python_version = new_python_version
56 deps = dist.requires()
58 depsextras = dist.requires(extras=dist.extras)
59 @@ -153,15 +172,20 @@ for f in files:
61 depsextras.remove(dep)
63 + platform.python_version = old_python_version
64 # add requires/suggests based on egg metadata
66 - name = 'pythonegg(%s)' % dep.key
67 + if dist.py_version .split(".")[0] == '3':
68 + name = 'python3egg(%s)' % dep.key
70 + name = 'pythonegg(%s)' % dep.key
71 for spec in dep.specs:
73 if not name in py_deps:
75 - if not spec in py_deps[name]:
76 - py_deps[name].append(spec)
77 + plddep = (spec[0], make_pldver(spec[1]))
78 + if not plddep in py_deps[name]:
79 + py_deps[name].append(plddep)
82 # Unused, for automatic sub-package generation based on 'extras' from egg metadata