summaryrefslogtreecommitdiff
path: root/numpy/distutils/misc_util.py
diff options
context:
space:
mode:
authorcarlkl <cmkleffner@gmail.com>2015-09-24 23:46:23 +0200
committercarlkl <cmkleffner@gmail.com>2015-09-24 23:46:23 +0200
commitb354c005ccfe961e793ec4567e9cf6bbdca1b5f2 (patch)
tree50a456686e70f13601b30e1f9769bd88836b9d3a /numpy/distutils/misc_util.py
parent941a4e037d394dada43e3c2beef1e650d5505742 (diff)
downloadnumpy-b354c005ccfe961e793ec4567e9cf6bbdca1b5f2.tar.gz
BLD: mingwpy fixes
Diffstat (limited to 'numpy/distutils/misc_util.py')
-rw-r--r--numpy/distutils/misc_util.py17
1 files changed, 15 insertions, 2 deletions
diff --git a/numpy/distutils/misc_util.py b/numpy/distutils/misc_util.py
index 75d864c5a..f5ef1f9b9 100644
--- a/numpy/distutils/misc_util.py
+++ b/numpy/distutils/misc_util.py
@@ -381,9 +381,22 @@ def mingw32():
"""Return true when using mingw32 environment.
"""
if sys.platform=='win32':
- if os.environ.get('OSTYPE', '')=='msys':
+ # mingw32 compiler configured in %USERPROFILE%\pydistutils.cfg
+ # or distutils\distutils.cfg
+ from distutils.dist import Distribution
+ _dist = Distribution()
+ _dist.parse_config_files()
+ _bld = _dist.get_option_dict('build')
+ if _bld and 'mingw32' in _bld.get('compiler'):
return True
- if os.environ.get('MSYSTEM', '')=='MINGW32':
+ # parse setup.py command line: --compiler=mingw32 or -c mingw32
+ elif (_i for _i in sys.argv if 'mingw32' in _i) and \
+ (_i for _i in sys.argv if ('setup.py') in _i):
+ return True
+ # using msys or msys2 shell
+ elif os.environ.get('OSTYPE', '')=='msys':
+ return True
+ elif os.environ.get('MSYSTEM', '') in ('MINGW32', 'MINGW64'):
return True
return False