a :jg@sddlZddlmZddlmZddlmZedkrDddlm Z GdddeZ Gd d d e Z Gd d d eZ edkrGd dde Z Gddde ZdS)N) UnixCCompiler)find_executable)simple_version_matchWindows) MSVCCompilerc@s&eZdZdZdZdZdZd ddZdS) IntelCCompilerz=A modified Intel compiler compatible with a GCC-built Python.inteliccZfPICrcCs~t|||||}|r(|dkr(dnd}d||_|j}tdkrPd}nd}|j|||d|d |d |d d dS) N15openmpqopenmpz7icc -fPIC -fp-model strict -O3 -fomit-frame-pointer -{}Darwin-Wl,-undefined,dynamic_lookup-sharedxiar cru -shared-intel compiler compiler_so compiler_cxxarchiver linker_exe linker_sor__init__ get_versionformatcc_exeplatformsystemset_executablesselfverbosedry_runforcevZmpoptrZ shared_flagr(H/usr/local/lib/python3.9/site-packages/numpy/distutils/intelccompiler.pyrs&  zIntelCCompiler.__init__N)rrr__name__ __module__ __qualname____doc__ compiler_typerZcc_argsrr(r(r(r)r s rc@s,eZdZdZeeddgD] Zerq(qdS)IntelItaniumCCompilerZinteler ZeccN)r+r,r-r/maprrr(r(r(r)r0&sr0c@s&eZdZdZdZdZdZd ddZdS) IntelEM64TCCompilerzT A modified Intel x86_64 compiler compatible with a 64bit GCC-built Python. Zintelemzicc -m64z-fPICrcCs~t|||||}|r(|dkr(dnd}d||_|j}tdkrPd}nd}|j|||d|d |d |d d dS) Nr r r zEicc -std=c99 -m64 -fPIC -fp-model strict -O3 -fomit-frame-pointer -{}r rrrrrrrr"r(r(r)r8s&  zIntelEM64TCCompiler.__init__N)rrrr*r(r(r(r)r20s r2c@s,eZdZdZdZdZd ddZd dd ZdS) IntelCCompilerWzQ A modified Intel compiler compatible with an MSVC-built Python. ZintelwZiclrcCs$t||||tdd}||_dS)NzIntel\(R\).*?32,start)rrrZ_IntelCCompilerW__versionr#r$r%r&Z version_matchr(r(r)rVs zIntelCCompilerW.__init__NcCsHt|||d|_|d|_|d|_gd|_gd|_dS)Nzicl.exeZxilibZxilink)/nologoz/O3z/MD/W3 /Qstd=c99)r7z/Odz/MDdr8r9z/Z7z/D_DEBUG)r initializeZfind_execclibZlinkerZcompile_optionsZcompile_options_debug)r# plat_namer(r(r)r:[s      zIntelCCompilerW.initialize)rrr)N)r+r,r-r.r/rrr:r(r(r(r)r3Os  r3c@seZdZdZdZdddZdS)IntelEM64TCCompilerWze A modified Intel x86_64 compiler compatible with a 64bit MSVC-built Python. ZintelemwrcCs$t||||tdd}||_dS)NzIntel\(R\).*?64,r4)rrrZ_IntelEM64TCCompilerW__versionr6r(r(r)rls zIntelEM64TCCompilerW.__init__N)rrr)r+r,r-r.r/rr(r(r(r)r>esr>)rZdistutils.unixccompilerrZnumpy.distutils.exec_commandrZnumpy.distutils.ccompilerrr Znumpy.distutils.msvc9compilerrrr0r2r3r>r(r(r(r)s