# HG changeset patch # User Bryan O'Sullivan # Date 1341631712 25200 # Node ID 5d6cbfa975bf2ad0a7b005287617e91e4c38b7b3 # Parent 01d847e0fdc9578ae2f94b42291bcb6a6e5bf89e# Parent d13f47c800fdc52206bd4cc707a46d48773c8b78 Merge diff -r 01d847e0fdc9 -r 5d6cbfa975bf setup.py --- a/setup.py Fri Jul 06 00:30:18 2012 +0200 +++ b/setup.py Fri Jul 06 20:28:32 2012 -0700 @@ -65,6 +65,7 @@ from distutils.command.install_scripts import install_scripts from distutils.spawn import spawn, find_executable from distutils.ccompiler import new_compiler +from distutils import cygwinccompiler from distutils.errors import CCompilerError, DistutilsExecError from distutils.sysconfig import get_python_inc from distutils.version import StrictVersion @@ -429,6 +430,20 @@ extmodules.append(Extension('mercurial.osutil', ['mercurial/osutil.c'], extra_link_args=osutil_ldflags)) +# the -mno-cygwin option has been deprecated for years +Mingw32CCompiler = cygwinccompiler.Mingw32CCompiler + +class HackedMingw32CCompiler(cygwinccompiler.Mingw32CCompiler): + def __init__(self, *args, **kwargs): + Mingw32CCompiler.__init__(self, *args, **kwargs) + for i in 'compiler compiler_so linker_exe linker_so'.split(): + try: + getattr(self, i).remove('-mno-cygwin') + except ValueError: + pass + +cygwinccompiler.Mingw32CCompiler = HackedMingw32CCompiler + if sys.platform.startswith('linux') and os.uname()[2] > '2.6': # The inotify extension is only usable with Linux 2.6 kernels. # You also need a reasonably recent C library.