--- ../../../Python-3.1b1-a/Lib/distutils/text_file.py 2009-02-22 21:05:16.000000000 +0100 +++ text_file.py 2009-05-12 09:25:40.000000000 +0200 @@ -111,7 +111,20 @@ """Open a new file named 'filename'. This overrides both the 'filename' and 'file' arguments to the constructor.""" self.filename = filename - self.file = io.open(self.filename, 'r') + + # importing locale may fail during build + try: + import locale + encoding=locale.getpreferredencoding() + except ImportError: + import sys + encoding=sys.getfilesystemencoding() + + # sys.getfilesystemencoding always works, but may return None + if encoding is None: + encoding='ascii' + + self.file = io.open(self.filename, 'r', encoding=encoding) self.current_line = 0 def close(self):