Created starter files for the project.
This commit is contained in:
commit
73f0c0db42
1992 changed files with 769897 additions and 0 deletions
|
@ -0,0 +1,42 @@
|
|||
import shutil
|
||||
import subprocess
|
||||
import sys
|
||||
import pytest
|
||||
|
||||
from numpy.distutils import mingw32ccompiler
|
||||
|
||||
|
||||
@pytest.mark.skipif(sys.platform != 'win32', reason='win32 only test')
|
||||
def test_build_import():
|
||||
'''Test the mingw32ccompiler.build_import_library, which builds a
|
||||
`python.a` from the MSVC `python.lib`
|
||||
'''
|
||||
|
||||
# make sure `nm.exe` exists and supports the current python version. This
|
||||
# can get mixed up when the PATH has a 64-bit nm but the python is 32-bit
|
||||
try:
|
||||
out = subprocess.check_output(['nm.exe', '--help'])
|
||||
except FileNotFoundError:
|
||||
pytest.skip("'nm.exe' not on path, is mingw installed?")
|
||||
supported = out[out.find(b'supported targets:'):]
|
||||
if sys.maxsize < 2**32:
|
||||
if b'pe-i386' not in supported:
|
||||
raise ValueError("'nm.exe' found but it does not support 32-bit "
|
||||
"dlls when using 32-bit python. Supported "
|
||||
"formats: '%s'" % supported)
|
||||
elif b'pe-x86-64' not in supported:
|
||||
raise ValueError("'nm.exe' found but it does not support 64-bit "
|
||||
"dlls when using 64-bit python. Supported "
|
||||
"formats: '%s'" % supported)
|
||||
# Hide the import library to force a build
|
||||
has_import_lib, fullpath = mingw32ccompiler._check_for_import_lib()
|
||||
if has_import_lib:
|
||||
shutil.move(fullpath, fullpath + '.bak')
|
||||
|
||||
try:
|
||||
# Whew, now we can actually test the function
|
||||
mingw32ccompiler.build_import_library()
|
||||
|
||||
finally:
|
||||
if has_import_lib:
|
||||
shutil.move(fullpath + '.bak', fullpath)
|
Loading…
Add table
Add a link
Reference in a new issue