Patch by Toby Dickenson, mentored by Mark Hammond, to support
automatically finding (most of) the standard PYD extensions, and to
remove the hardcoded Python version.
diff --git a/Tools/freeze/checkextensions_win32.py b/Tools/freeze/checkextensions_win32.py
index e3efe05..e90bdab 100644
--- a/Tools/freeze/checkextensions_win32.py
+++ b/Tools/freeze/checkextensions_win32.py
@@ -54,7 +54,7 @@
 	def GetLinkerLibs(self):
 		return self.linkerLibs
 
-def checkextensions(unknown, extra_inis):
+def checkextensions(unknown, extra_inis, prefix):
         # Create a table of frozen extensions
 
 	defaultMapName = os.path.join( os.path.split(sys.argv[0])[0], "extensions_win32.ini")
@@ -68,7 +68,7 @@
 	for mod in unknown:
 		for ini in extra_inis:
 #			print "Looking for", mod, "in", win32api.GetFullPathName(ini),"...",
-			defn = get_extension_defn( mod, ini )
+			defn = get_extension_defn( mod, ini, prefix )
 			if defn is not None:
 #				print "Yay - found it!"
 				ret.append( defn )
@@ -79,8 +79,9 @@
 		
 	return ret
 
-def get_extension_defn(moduleName, mapFileName):
+def get_extension_defn(moduleName, mapFileName, prefix):
 	if win32api is None: return None
+	os.environ['PYTHONPREFIX'] = prefix
 	dsp = win32api.GetProfileVal(moduleName, "dsp", "", mapFileName)
 	if dsp=="":
 		return None