import platform from distutils.unixccompiler import UnixCCompiler from numpy.distutils.exec_command import find_executable from numpy.distutils.ccompiler import simple_version_match if platform.system() == 'Windows': from numpy.distutils.msvc9compiler import MSVCCompiler class IntelCCompiler(UnixCCompiler): """A modified Intel compiler compatible with a GCC-built Python.""" compiler_type = 'intel' cc_exe = 'icc' cc_args = 'fPIC' def __init__(self, verbose=0, dry_run=0, force=0): UnixCCompiler.__init__(self, verbose, dry_run, force) v = self.get_version() mpopt = 'openmp' if v and v < '15' else 'qopenmp' self.cc_exe = ('icc -fPIC -fp-model strict -O3 ' '-fomit-frame-pointer -{}').format(mpopt) compiler = self.cc_exe if platform.system() == 'Darwin': shared_flag = '-Wl,-undefined,dynamic_lookup' else: shared_flag = '-shared' self.set_executables(compiler=compiler, compiler_so=compiler, compiler_cxx=compiler, archiver='xiar' + ' cru', linker_exe=compiler + ' -shared-intel', linker_so=compiler + ' ' + shared_flag + ' -shared-intel') class IntelItaniumCCompiler(IntelCCompiler): compiler_type = 'intele' # On Itanium, the Intel Compiler used to be called ecc, let's search for # it (now it's also icc, so ecc is last in the search). for cc_exe in map(find_executable, ['icc', 'ecc']): if cc_exe: break class IntelEM64TCCompiler(UnixCCompiler): """ A modified Intel x86_64 compiler compatible with a 64bit GCC-built Python. """ compiler_type = 'intelem' cc_exe = 'icc -m64' cc_args = '-fPIC' def __init__(self, verbose=0, dry_run=0, force=0): UnixCCompiler.__init__(self, verbose, dry_run, force) v = self.get_version() mpopt = 'openmp' if v and v < '15' else 'qopenmp' self.cc_exe = ('icc -std=c99 -m64 -fPIC -fp-model strict -O3 ' '-fomit-frame-pointer -{}').format(mpopt) compiler = self.cc_exe if platform.system() == 'Darwin': shared_flag = '-Wl,-undefined,dynamic_lookup' else: shared_flag = '-shared' self.set_executables(compiler=compiler, compiler_so=compiler, compiler_cxx=compiler, archiver='xiar' + ' cru', linker_exe=compiler + ' -shared-intel', linker_so=compiler + ' ' + shared_flag + ' -shared-intel') if platform.system() == 'Windows': class IntelCCompilerW(MSVCCompiler): """ A modified Intel compiler compatible with an MSVC-built Python. """ compiler_type = 'intelw' compiler_cxx = 'icl' def __init__(self, verbose=0, dry_run=0, force=0): MSVCCompiler.__init__(self, verbose, dry_run, force) version_match = simple_version_match(start=r'Intel\(R\).*?32,') self.__version = version_match def initialize(self, plat_name=None): MSVCCompiler.initialize(self, plat_name) self.cc = self.find_exe('icl.exe') self.lib = self.find_exe('xilib') self.linker = self.find_exe('xilink') self.compile_options = ['/nologo', '/O3', '/MD', '/W3', '/Qstd=c99'] self.compile_options_debug = ['/nologo', '/Od', '/MDd', '/W3', '/Qstd=c99', '/Z7', '/D_DEBUG'] class IntelEM64TCCompilerW(IntelCCompilerW): """ A modified Intel x86_64 compiler compatible with a 64bit MSVC-built Python. """ compiler_type = 'intelemw' def __init__(self, verbose=0, dry_run=0, force=0): MSVCCompiler.__init__(self, verbose, dry_run, force) version_match = simple_version_match(start=r'Intel\(R\).*?64,') self.__version = version_match
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
__pycache__ | Folder | 0755 |
|
|
checks | Folder | 0755 |
|
|
command | Folder | 0755 |
|
|
fcompiler | Folder | 0755 |
|
|
mingw | Folder | 0755 |
|
|
tests | Folder | 0755 |
|
|
__config__.py | File | 5.02 KB | 0644 |
|
__init__.py | File | 2.03 KB | 0644 |
|
__init__.pyi | File | 119 B | 0644 |
|
_shell_utils.py | File | 2.55 KB | 0644 |
|
armccompiler.py | File | 962 B | 0644 |
|
ccompiler.py | File | 27.95 KB | 0644 |
|
ccompiler_opt.py | File | 97.98 KB | 0644 |
|
conv_template.py | File | 9.31 KB | 0644 |
|
core.py | File | 7.98 KB | 0644 |
|
cpuinfo.py | File | 22.11 KB | 0644 |
|
exec_command.py | File | 10.04 KB | 0644 |
|
extension.py | File | 3.48 KB | 0644 |
|
from_template.py | File | 7.73 KB | 0644 |
|
fujitsuccompiler.py | File | 834 B | 0644 |
|
intelccompiler.py | File | 4.13 KB | 0644 |
|
lib2def.py | File | 3.54 KB | 0644 |
|
line_endings.py | File | 1.98 KB | 0644 |
|
log.py | File | 2.81 KB | 0644 |
|
mingw32ccompiler.py | File | 21.55 KB | 0644 |
|
misc_util.py | File | 87.26 KB | 0644 |
|
msvc9compiler.py | File | 2.14 KB | 0644 |
|
msvccompiler.py | File | 2.58 KB | 0644 |
|
npy_pkg_config.py | File | 12.67 KB | 0644 |
|
numpy_distribution.py | File | 634 B | 0644 |
|
pathccompiler.py | File | 713 B | 0644 |
|
setup.py | File | 634 B | 0644 |
|
system_info.py | File | 110.53 KB | 0644 |
|
unixccompiler.py | File | 5.3 KB | 0644 |
|