Rearrange some stuff so that the warning for unknown modules is also
issued on Windows.
diff --git a/Tools/freeze/freeze.py b/Tools/freeze/freeze.py
index 3b58243..3de6bdb 100755
--- a/Tools/freeze/freeze.py
+++ b/Tools/freeze/freeze.py
@@ -279,6 +279,33 @@
os.unlink(frozen_c)
os.rename(backup, frozen_c)
+ # look for unfrozen modules (builtin and of unknown origin)
+ builtins = []
+ unknown = []
+ mods = dict.keys()
+ mods.sort()
+ for mod in mods:
+ if dict[mod].__code__:
+ continue
+ if not dict[mod].__file__:
+ builtins.append(mod)
+ else:
+ unknown.append(mod)
+
+ # search for unknown modules in extensions directories (not on Windows)
+ addfiles = []
+ if unknown and not win:
+ addfiles, addmods = \
+ checkextensions.checkextensions(unknown, extensions)
+ for mod in addmods:
+ unknown.remove(mod)
+ builtins = builtins + addmods
+
+ # report unknown modules
+ if unknown:
+ sys.stderr.write('Warning: unknown modules remain: %s\n' %
+ string.join(unknown))
+
# windows gets different treatment
if win:
# Taking a shortcut here...
@@ -295,29 +322,6 @@
return
# generate config.c and Makefile
- builtins = []
- unknown = []
- mods = dict.keys()
- mods.sort()
- for mod in mods:
- if dict[mod].__code__:
- continue
- if not dict[mod].__file__:
- builtins.append(mod)
- else:
- unknown.append(mod)
-
- addfiles = []
- if unknown:
- addfiles, addmods = \
- checkextensions.checkextensions(unknown, extensions)
- for mod in addmods:
- unknown.remove(mod)
- builtins = builtins + addmods
- if unknown:
- sys.stderr.write('Warning: unknown modules remain: %s\n' %
- string.join(unknown))
-
builtins.sort()
infp = open(config_c_in)
backup = config_c + '~'