[Distutils] Re: CygwinCCompiler, msvc hack, BCPPCompiler

Rene Liebscher R.Liebscher@gmx.de
Thu, 27 Jul 2000 12:54:45 +0200


Greg Ward wrote:
> 
> On 23 July 2000, Rene Liebscher said:
> > In the latest cygwin binutils 2.10.90 is a bug in dllwrap.
> > This new version of my patch tries now to find out the version
> > numbers of gcc, ld and dllwrap, so we can inform the user
> > if he is using a broken version of one of these programs.
> 
> Ugh.  I guess version-checking is slightly better than crashing, but I
> hate that it's necessary.  *grumble*
There is no other way (except to have a own compiler class for every
version.)
In the latest version of cygwinccompiler.py all cygwin/mingw compilers 
I could test are now working.

> ....., and submit your fix to bcppcompiler.py
> separately from the other patches?  *Then* I'll be able to comment
> sensibly on it.
>
OK, here are now three patches:
* msvc.patch: changes msvccompiler.py and build_ext.py
      (You need its changes in build_ext.py to get the 
       other two compilers work properly after applying their patches.)
* bcpp.patch: changes bcppcompiler.py
* cygwin.patch: the latest version of cygwinccompiler.py, 
      some changes in spawn.py (I moved a port of spawn_nt()
      in a separate function find_executable(), I use this
      in my compiler class) and it removes from sysconfig.py
       g['CC'] = "cc" and this other stuff which UnixCCompiler
      needed in its old version.


And some cosmetic changes:
Almost all messages start with a verb, but this one in install_lib.py
starts with a noun.
#######################
--- distutils.orig/distutils/command/install_lib.py    
+++ distutils.patched/distutils/command/install_lib.py 
@@ -74,7 +74,7 @@
                     out_fn = f + (__debug__ and "c" or "o")
                     compile_msg = "byte-compiling %s to %s" % \
                                   (f, os.path.basename (out_fn))
-                    skip_msg = "byte-compilation of %s skipped" % f
+                    skip_msg = "skipping byte-compilation of %s" % f
                     self.make_file (f, out_fn, compile, (f,),
                                     compile_msg, skip_msg)
     # run ()
#######################


Kind regards

Rene Liebscher