diff options
Diffstat (limited to 'Tools/scripts/freeze_modules.py')
-rw-r--r-- | Tools/scripts/freeze_modules.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Tools/scripts/freeze_modules.py b/Tools/scripts/freeze_modules.py index cfc6f7921c9..f7273915b91 100644 --- a/Tools/scripts/freeze_modules.py +++ b/Tools/scripts/freeze_modules.py @@ -221,6 +221,7 @@ def _parse_spec(spec, knownids=None, section=None): if ispkg: pkgid = frozenid pkgname = modname + pkgfiles = {pyfile: pkgid} def iter_subs(): for frozenid, pyfile, ispkg in resolved: assert not knownids or frozenid not in knownids, (frozenid, spec) @@ -228,6 +229,12 @@ def _parse_spec(spec, knownids=None, section=None): modname = frozenid.replace(pkgid, pkgname, 1) else: modname = frozenid + if pyfile: + if pyfile in pkgfiles: + frozenid = pkgfiles[pyfile] + pyfile = None + elif ispkg: + pkgfiles[pyfile] = frozenid yield frozenid, pyfile, modname, ispkg, section submodules = iter_subs() |