[Python-checkins] r65835 - in python/branches/release25-maint: Lib/distutils/cygwinccompiler.py Misc/NEWS

amaury.forgeotdarc python-checkins at python.org
Mon Aug 18 21:33:43 CEST 2008


Author: amaury.forgeotdarc
Date: Mon Aug 18 21:33:42 2008
New Revision: 65835

Log:
Issue #2234: distutils failed with mingw binutils 2.18.50.20080109.
Be less strict when parsing these version numbers, 
they don't necessarily follow the python numbering scheme.

Backport of r65834


Modified:
   python/branches/release25-maint/Lib/distutils/cygwinccompiler.py
   python/branches/release25-maint/Misc/NEWS

Modified: python/branches/release25-maint/Lib/distutils/cygwinccompiler.py
==============================================================================
--- python/branches/release25-maint/Lib/distutils/cygwinccompiler.py	(original)
+++ python/branches/release25-maint/Lib/distutils/cygwinccompiler.py	Mon Aug 18 21:33:42 2008
@@ -398,7 +398,7 @@
     """ Try to find out the versions of gcc, ld and dllwrap.
         If not possible it returns None for it.
     """
-    from distutils.version import StrictVersion
+    from distutils.version import LooseVersion
     from distutils.spawn import find_executable
     import re
 
@@ -409,7 +409,7 @@
         out.close()
         result = re.search('(\d+\.\d+(\.\d+)*)',out_string)
         if result:
-            gcc_version = StrictVersion(result.group(1))
+            gcc_version = LooseVersion(result.group(1))
         else:
             gcc_version = None
     else:
@@ -421,7 +421,7 @@
         out.close()
         result = re.search('(\d+\.\d+(\.\d+)*)',out_string)
         if result:
-            ld_version = StrictVersion(result.group(1))
+            ld_version = LooseVersion(result.group(1))
         else:
             ld_version = None
     else:
@@ -433,7 +433,7 @@
         out.close()
         result = re.search(' (\d+\.\d+(\.\d+)*)',out_string)
         if result:
-            dllwrap_version = StrictVersion(result.group(1))
+            dllwrap_version = LooseVersion(result.group(1))
         else:
             dllwrap_version = None
     else:

Modified: python/branches/release25-maint/Misc/NEWS
==============================================================================
--- python/branches/release25-maint/Misc/NEWS	(original)
+++ python/branches/release25-maint/Misc/NEWS	Mon Aug 18 21:33:42 2008
@@ -77,6 +77,10 @@
 Library
 -------
 
+- Issue #2234: distutils failed for some versions of the cygwin compiler. The
+  version reported by these tools does not necessarily follow the python
+  version numbering scheme, so the module is less strict when parsing it.
+
 - Issue #2222: Fixed reference leak when occured os.rename()
   fails unicode conversion on 2nd parameter. (windows only)
 


More information about the Python-checkins mailing list