From: Thomas H. <th...@us...> - 2007-09-07 18:17:05
|
Update of /cvsroot/py2exe/py2exe/py2exe In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26307 Modified Files: build_exe.py Log Message: Patch from Grant Edwards, slightly adjusted: py2exe now renames the pyd files that it copies into the dist directory so that they include the package name. This prevents name conflicts. Index: build_exe.py =================================================================== RCS file: /cvsroot/py2exe/py2exe/py2exe/build_exe.py,v retrieving revision 1.74 retrieving revision 1.75 diff -C2 -d -r1.74 -r1.75 *** build_exe.py 6 Sep 2007 07:46:29 -0000 1.74 --- build_exe.py 7 Sep 2007 18:17:06 -0000 1.75 *************** *** 413,419 **** src = item.__file__ if self.bundle_files > 2: # don't bundle pyds and dlls ! # XXX all dlls are copied into the same directory - a flat name space. ! # sooner or later that will give conflicts. ! dst = os.path.join(self.lib_dir, os.path.basename(item.__file__)) self.copy_file(src, dst, preserve_mode=0) self.lib_files.append(dst) --- 413,417 ---- src = item.__file__ if self.bundle_files > 2: # don't bundle pyds and dlls ! dst = os.path.join(self.lib_dir, (item.__pydfile__)) self.copy_file(src, dst, preserve_mode=0) self.lib_files.append(dst) *************** *** 1086,1094 **** # Hm, how to avoid needless recreation of this file? pathname = os.path.join(self.temp_dir, "%s.py" % item.__name__) # and what about dry_run? if self.verbose: ! print "creating python loader for extension '%s'" % item.__name__ - fname = os.path.basename(item.__file__) source = LOADER % fname if not self.dry_run: --- 1084,1100 ---- # Hm, how to avoid needless recreation of this file? pathname = os.path.join(self.temp_dir, "%s.py" % item.__name__) + if self.bundle_files > 2: # don't bundle pyds and dlls + # all dlls are copied into the same directory, so modify + # names to include the package name to avoid name + # conflicts and tuck it away for future reference + fname = item.__name__ + os.path.splitext(item.__file__)[1] + item.__pydfile__ = fname + else: + fname = os.path.basename(item.__file__) + # and what about dry_run? if self.verbose: ! print "creating python loader for extension '%s' (%s -> %s)" % (item.__name__,item.__file__,fname) source = LOADER % fname if not self.dry_run: |