U ã€C^Sã@sZddlmZmZmZddlmZddlmZd dd„ZGdd„deƒZ Gd d „d eƒZ dS) é)ÚdivisionÚabsolute_importÚprint_function)ÚCommand)ÚlogNcCsF|rdS|dkrg}| d¡ddlm}ddl}|jj}||ƒdS)Nér)Úshow_fcompilers)ÚappendZnumpy.distutils.fcompilerrÚdistutils.coreÚcoreÚ_setup_distribution)Ú_cacherÚ distutilsÚdist©rúJ/tmp/pip-install-6_kvzl1k/numpy/numpy/distutils/command/config_compiler.pyÚshow_fortran_compilerss  rc @s\eZdZdZdZddddddd d d d g Zd ddefgZdddgZdd„Z dd„Z dd„Z dS)Ú config_fcz” Distutils command to hold user specified options to Fortran compilers. config_fc command is used by the FCompiler.customize() method. z2specify Fortran 77/Fortran 90 compiler information)z fcompiler=Nzspecify Fortran compiler type)zf77exec=Nzspecify F77 compiler command)zf90exec=Nzspecify F90 compiler command)z f77flags=Nzspecify F77 compiler flags)z f90flags=Nzspecify F90 compiler flags)zopt=Nzspecify optimization flags)zarch=Nz0specify architecture specific optimization flags)ÚdebugÚgz"compile with debugging information)ÚnooptNzcompile without optimization)ÚnoarchNz+compile without arch-dependent optimizationzhelp-fcompilerNz list available Fortran compilersrrrcCs@d|_d|_d|_d|_d|_d|_d|_d|_d|_d|_ dS©N) Ú fcompilerZf77execZf90execZf77flagsZf90flagsÚoptÚarchrrr©ÚselfrrrÚinitialize_options1szconfig_fc.initialize_optionsc Csèt d¡| d¡}| d¡}| d¡}| d¡}|||||g}dD]ž}g}|D]8}t||ƒ} | dk rPt| tƒsv| j} | |krP| | ¡qP|s”d} n|d} t|ƒdkrºt  d ||f¡| rD|D]}t||ƒdkrÂt ||| ƒqÂqDdS) NzTunifing config_fc, config, build_clib, build_ext, build commands --fcompiler optionsÚ build_clibÚ build_extÚconfigÚbuild)rrrúJ commands have different --%s options: %s, using first in list as default© rÚinfoÚget_finalized_commandÚgetattrÚ isinstanceÚstrÚ compiler_typer ÚlenÚwarnÚsetattr© rrr r!r"Zcmd_listÚaÚlÚcÚvZv1rrrÚfinalize_options=s4         ÿzconfig_fc.finalize_optionscCsdSrrrrrrÚrunTsz config_fc.run) Ú__name__Ú __module__Ú __qualname__Ú__doc__Ú descriptionÚ user_optionsrÚ help_optionsÚboolean_optionsrr3r4rrrrrs*öÿÿ  rc@s2eZdZdZdZdgZdd„Zdd„Zdd „Zd S) Ú config_cczN Distutils command to hold user specified options to C/C++ compilers. z"specify C/C++ compiler information)z compiler=Nzspecify C/C++ compiler typecCs d|_dSr©Úcompilerrrrrrcszconfig_cc.initialize_optionsc Csèt d¡| d¡}| d¡}| d¡}| d¡}|||||g}dD]ž}g}|D]8}t||ƒ} | dk rPt| tƒsv| j} | |krP| | ¡qP|s”d} n|d} t|ƒdkrºt  d ||f¡| rD|D]}t||ƒdkrÂt ||| ƒqÂqDdS) NzSunifing config_cc, config, build_clib, build_ext, build commands --compiler optionsrr r!r"r>rrr#r$r.rrrr3fs6         ÿzconfig_cc.finalize_optionscCsdSrrrrrrr4~sz config_cc.runN) r5r6r7r8r9r:rr3r4rrrrr=Xsÿr=)N) Ú __future__rrrr rZnumpy.distutilsrrrr=rrrrÚs    D