mirror of
https://github.com/panda3d/panda3d.git
synced 2025-12-20 22:19:55 -06:00
dist: Fix inability to pick up nested hidden modules
This commit is contained in:
9
direct/src/dist/FreezeTool.py
vendored
9
direct/src/dist/FreezeTool.py
vendored
@@ -1249,8 +1249,12 @@ class Freezer:
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
# Check if any new modules we found have "hidden" imports
|
# Check if any new modules we found have "hidden" imports
|
||||||
for origName in list(self.mf.modules.keys()):
|
checkHiddenImports = set(self.mf.modules.keys())
|
||||||
|
while checkHiddenImports:
|
||||||
|
origName = next(iter(checkHiddenImports))
|
||||||
|
checkHiddenImports.discard(origName)
|
||||||
hidden = self.hiddenImports.get(origName, [])
|
hidden = self.hiddenImports.get(origName, [])
|
||||||
|
preModules = frozenset(self.mf.modules.keys())
|
||||||
for modname in hidden:
|
for modname in hidden:
|
||||||
if modname.endswith('.*'):
|
if modname.endswith('.*'):
|
||||||
mdefs = self._gatherSubmodules(modname, implicit = True)
|
mdefs = self._gatherSubmodules(modname, implicit = True)
|
||||||
@@ -1264,6 +1268,9 @@ class Freezer:
|
|||||||
self.__loadModule(self.ModuleDef(modname, implicit = True))
|
self.__loadModule(self.ModuleDef(modname, implicit = True))
|
||||||
except ImportError:
|
except ImportError:
|
||||||
pass
|
pass
|
||||||
|
addedModules = set(self.mf.modules.keys())
|
||||||
|
addedModules -= preModules
|
||||||
|
checkHiddenImports |= addedModules
|
||||||
|
|
||||||
# Special case for sysconfig, which depends on a platform-specific
|
# Special case for sysconfig, which depends on a platform-specific
|
||||||
# sysconfigdata module on POSIX systems.
|
# sysconfigdata module on POSIX systems.
|
||||||
|
|||||||
Reference in New Issue
Block a user