Refactor:  Remove some code that was obsoleted when this module was
           changed to use universal newlines.

           Remove all imports from the compile() function; these are
           now done at the top of the module ("Python normal form"),
           and define a helper based on the platform instead of
           testing the platform in the compile() function.
diff --git a/Lib/py_compile.py b/Lib/py_compile.py
index d10c5cb..4a3a8a0 100644
--- a/Lib/py_compile.py
+++ b/Lib/py_compile.py
@@ -3,11 +3,26 @@
 This module has intimate knowledge of the format of .pyc files.
 """
 
+import __builtin__
 import imp
+import marshal
+import os
+import sys
+import traceback
+
 MAGIC = imp.get_magic()
 
 __all__ = ["compile"]
 
+# Define an internal helper according to the platform
+if os.name == "mac":
+    import macfs
+    def set_creator_type(file):
+        macfs.FSSpec(file).SetCreatorType('Pyth', 'PYC ')
+else:
+    def set_creator_type(file):
+        pass
+
 def wr_long(f, x):
     """Internal; write a 32-bit int to a file in little-endian order."""
     f.write(chr( x        & 0xff))
@@ -43,29 +58,22 @@
     directories).
 
     """
-    import os, marshal, __builtin__
     f = open(file, 'U')
     try:
         timestamp = long(os.fstat(f.fileno()).st_mtime)
     except AttributeError:
         timestamp = long(os.stat(file).st_mtime)
     codestring = f.read()
-    # If parsing from a string, line breaks are \n (see parsetok.c:tok_nextc)
-    # Replace will return original string if pattern is not found, so
-    # we don't need to check whether it is found first.
-    codestring = codestring.replace("\r\n","\n")
-    codestring = codestring.replace("\r","\n")
     f.close()
     if codestring and codestring[-1] != '\n':
         codestring = codestring + '\n'
     try:
         codeobject = __builtin__.compile(codestring, dfile or file, 'exec')
     except SyntaxError, detail:
-        import traceback, sys
         lines = traceback.format_exception_only(SyntaxError, detail)
         for line in lines:
             sys.stderr.write(line.replace('File "<string>"',
-                                            'File "%s"' % (dfile or file)))
+                                          'File "%s"' % (dfile or file)))
         return
     if cfile is None:
         cfile = file + (__debug__ and 'c' or 'o')
@@ -77,6 +85,4 @@
     fc.seek(0, 0)
     fc.write(MAGIC)
     fc.close()
-    if os.name == 'mac':
-        import macfs
-        macfs.FSSpec(cfile).SetCreatorType('Pyth', 'PYC ')
+    set_creator_type(cfile)