U ã€C^½ã@sšddlmZmZmZddlZddlmZddlmZm Z ddl m Z dgZ Gdd„deƒZ edkr–dd lmZe d ¡dd lmZeed d  ¡ƒdS)é)ÚdivisionÚabsolute_importÚprint_functionN)Úcpu)Ú FCompilerÚdummy_fortran_file)Ú cyg2win32ÚAbsoftFCompilerc@s¨eZdZdZdZdZddgdgdgdgdd gd gd œZejd krDd Z dZ dZ dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdd „Zd!d"„Zd#d$„ZdS)%r ÚabsoftzAbsoft Corp Fortran Compilerz§(f90:.*?(Absoft Pro FORTRAN Version|FORTRAN 77 Compiler|Absoft Fortran Compiler Version|Copyright Absoft Corporation.*?Version)) (?P[^\s*,]*)(.*?Absoft Corp|)NZf77Zf90úÚarz-crÚranlib)Ú version_cmdZ compiler_f77Z compiler_fixZ compiler_f90Ú linker_soÚarchiverr Úntz/out:z-pcCs,ttƒƒ}ddd|dd|dg|jd<dS)Nr z-Vz-cz.fz-oz.or)rrÚ executables)ÚselfÚf©rúC/tmp/pip-install-6_kvzl1k/numpy/numpy/distutils/fcompiler/absoft.pyÚupdate_executables1s  ÿz"AbsoftFCompiler.update_executablescCs2tjdkrdg}n| ¡dkr&dg}nddg}|S)Nrz/dllz9.0z-sharedz-KZshared)ÚosÚnameÚ get_version©rÚoptrrrÚget_flags_linker_so6s   z#AbsoftFCompiler.get_flags_linker_socCstjdkrdd|gSd|S)Nrz-linkz/PATH:%sz-L©rr)rÚdirrrrÚlibrary_dir_optionCs  z"AbsoftFCompiler.library_dir_optioncCstjdkrd|Sd|S)Nrz%s.libz-lr)rÚlibrrrÚlibrary_optionHs zAbsoftFCompiler.library_optioncCsbt |¡}tj d¡}|r^| ¡dkr,d}nd}t ¡r>d}nd}| tj   |d||f¡¡|S)NZABSOFTú10.0ÚshÚZ64z%slib%s) rÚget_library_dirsrÚenvironÚgetrrZis_64bitÚappendÚpathÚjoin)rrÚdÚprefixÚsuffixrrrr&Ms   z AbsoftFCompiler.get_library_dirscCs”t |¡}| ¡dkr*| ddddg¡nR| ¡dkrJ| ddddg¡n2| ¡dkrj| d d d dg¡n| d d d dg¡tjd kr| d¡|S)Nz11.0Zaf90mathZafioZaf77mathZamiscr#ZU77ú8.0Zf90mathZfioZf77mathZfmathrZCOMDLG32)rÚ get_librariesrÚextendrrr)rrrrr0]s      zAbsoftFCompiler.get_librariescCsBt |¡}tjdkr>| dg¡| ¡r>| ¡dkr>| d¡|S)Nrz-sz8.2z-fpic)rÚ get_flagsrrr1rr)rrrrr2ks     zAbsoftFCompiler.get_flagscCsxt |¡}| dddg¡| ¡}tjdkrH|rt|dkrt| ddg¡n,| d¡|rt|dkrj| d ¡n | d¡|S) Nz-N22z-N90z-N110rr/ú-fz-N15ú4.6z-B108)rÚ get_flags_f77r1rrrr))rrÚvrrrr5ts      zAbsoftFCompiler.get_flags_f77c CsFt |¡}| dddddddg¡| ¡rB| ¡dkrB| d g¡|S) Nú-YCFRL=1ú-YCOM_NAMES=LCSú -YCOM_PFXú -YEXT_PFXú -YCOM_SFX=_ú -YEXT_SFX=_ú-YEXT_NAMES=LCSr4z -YDEALLOC=ALL)rÚ get_flags_f90r1rrrrrr>†s  ÿ  zAbsoftFCompiler.get_flags_f90c Cs4t |¡}| dddddddg¡| dd g¡|S) Nr7r8r9r:r;r<r=r3Zfixed)rÚ get_flags_fixr1rrrrr?s  ÿzAbsoftFCompiler.get_flags_fixcCs dg}|S)Nz-OrrrrrÚ get_flags_opt–szAbsoftFCompiler.get_flags_opt)Ú__name__Ú __module__Ú __qualname__Ú compiler_typeÚ descriptionZversion_patternrrrZlibrary_switchZmodule_dir_switchZmodule_include_switchrrr r"r&r0r2r5r>r?r@rrrrr s4 ù    Ú__main__)Úlogé)Úcustomized_fcompilerr )Úcompiler)Ú __future__rrrrZnumpy.distutils.cpuinforZnumpy.distutils.fcompilerrrZnumpy.distutils.misc_utilrZ compilersr rAÚ distutilsrGÚ set_verbosityZnumpy.distutilsrIÚprintrrrrrÚs