U
    ?h5
                     @   sH   d dl Z d dlZd dlmZ d dlmZ d dlmZ G dd deZdS )    N)build)get_platform)show_fortran_compilersc                   @   st   e Zd Zddd fddd fdejfgej Zejddd	d
ddg Zejdddefg Zdd Z	dd Z
dd ZdS )r   Z	config_ccc                  G   s   dS NT argsr   r   O/var/www/html/venv/lib/python3.8/site-packages/numpy/distutils/command/build.py<lambda>	       zbuild.<lambda>Z	config_fcc                  G   s   dS r   r   r   r   r   r	   r
   
   r   Z	build_src)z
fcompiler=Nz!specify the Fortran compiler type)z
warn-errorNz'turn all warnings into errors (-Werror))zcpu-baseline=Nz4specify a list of enabled baseline CPU optimizations)zcpu-dispatch=Nz.specify a list of dispatched CPU optimizations)zdisable-optimizationNz1disable CPU optimized code(dispatch,simd,fast...))z
simd-test=NzMspecify a list of CPU optimizations to be tested against NumPy SIMD interfacezhelp-fcompilerNz list available Fortran compilersc                 C   s2   t |  d | _d| _d| _d| _d| _d| _d S )NFminzmax -xop -fma4zeBASELINE SSE2 SSE42 XOP FMA4 (FMA3 AVX2) AVX512F AVX512_SKX VSX VSX2 VSX3 VSX4 NEON ASIMD VX VXE VXE2)	old_buildinitialize_optionsZ	fcompilerZ
warn_errorZcpu_baselineZcpu_dispatchZdisable_optimizationZ	simd_testselfr   r   r	   r   "   s    

zbuild.initialize_optionsc                 C   sN   | j }t|  djt ftjd d  }|d krJtj	| j
d| | _ d S )Nz	.{}-{}.{}   scripts)build_scriptsr   finalize_optionsformatr   sysversion_infoospathjoin
build_base)r   r   plat_specifierr   r   r	   r   5   s    

zbuild.finalize_optionsc                 C   s   t |  d S )N)r   runr   r   r   r	   r   =   s    z	build.run)__name__
__module____qualname__r   has_ext_modulessub_commandsuser_optionshelp_optionsr   r   r   r   r   r   r   r	   r      s,   

r   )	r   r   Zdistutils.command.buildr   r   distutils.utilr   Z'numpy.distutils.command.config_compilerr   r   r   r   r	   <module>   s
   