o
    ʩZh                      @   s  d dl Z d dlmZ de jv r1dZd dlmZ d dlm	Z	 zd dlm
Z
 W n ey0   dZY n	w d dlmZ dZd dlZd dlZd dlZd d	lmZ d d
lmZ d dlmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z! d dl"m#Z#m$Z$ ejejejej%ej&ejejejejejejeje!j!eje j dZ'erd dlm(Z(m)Z) e
j
e'd< e(j(e'd< e	j	e'd< e)j)e'd< dd Z*dddZ+d ddZ,dd Zdd Z-dd Z.dS )!    N)Distribution
setuptoolsT)setup)easy_install)	bdist_eggF)	Extension)NumpyDistribution)configconfig_compilerbuildbuild_py	build_ext
build_clib	build_srcbuild_scriptssdistinstall_datainstall_headersinstall	bdist_rpminstall_clib)is_sequence	is_string)r   r   r   	config_cc	config_fcr	   r   r   r   r   r   r   r   r   r   )developegg_infor   r   r   r   c                 K   s   |  D ]Q\}}|| vr|| |< q| | }t|tr#|t| | |< qt|tr1|t| | |< qt|tr?t|fi | qt|rNt|sIJ || |< qttt	|d S N)
items
isinstancetuplelistdict_dict_appendr   	TypeErrorreprtype)dkwskvZdv r+   K/var/www/html/lang_env/lib/python3.10/site-packages/numpy/distutils/core.pyr#   7   s    



r#   c                 C   s   | r| d S | du rg } d}dd t jD }t jD ]}|d r(|d|d   qtjD ]}|ds;|d	ks;||v r?d
} nq,| | |S )zT Return True if command line does not contain any
    help or display requests.
    r   NTc                 S   s   g | ]}d | qS )z--r+   ).0nr+   r+   r,   
<listcomp>R   s    z$_command_line_ok.<locals>.<listcomp>   -z--helpz-hF)r   Zdisplay_option_namesZdisplay_optionsappendsysargv
startswith)_cacheokZdisplay_optsoargr+   r+   r,   _command_line_okI   s"   


r:   c                 C   s6   t jj}|d urdt|v rd }| r|d u rt }|S )NZDistributionWithoutHelpCommands)	distutilscore_setup_distributionr%   r   )alwaysdistr+   r+   r,   get_distribution]   s   r@   c                  K   s  t  }|  }d|v r||d  ||d< d|v rg|d}tjj}tjj}d tj_dtj_ztd
i |}W |tj_|tj_n	|tj_|tj_w |j	sQt
 sS|S | }t|dr_| }t|fi | g }|dg D ]1}	g }
|	jD ]&}t|r|\}}t||| |
| qvt|r|
| qvtd|f |
|	_qo|rd|vrg |d< |D ]	}t|d | qd|v sd|v rd|vrg |d< t|d	< td
i |S )NcmdclassconfigurationZcommandlinetodictZext_modulesz2invalid description of extension module library %r	librariesheadersZ	distclassr+   )numpy_cmdclasscopyupdatepopr;   r<   r=   Z_setup_stop_afterr   helpr:   hasattrrC   r#   getrD   r   _check_append_ext_libraryr2   r   r$   _check_append_libraryr   	old_setup)attrrA   new_attrrB   Zold_distZold_stopr?   r	   rD   extZnew_librariesitemlib_name
build_infor+   r+   r,   r   l   s^   




r   c                 C   s   | D ]a}t |rCt |r.|d |d kr-|d |d u r d S tjd|d f dd  n7q||d krBtjd|d f dd  n"qt |r\|d |kr[tjd|d f dd  n	q||krc d S q| | d S )Nr   r0   z8[0] libraries list contains %r with different build_info   
stacklevelz1[1] libraries list contains %r with no build_infoz1[2] libraries list contains %r with no build_infor   warningswarnr2   )rD   rS   Zlibitemr+   r+   r,   rN      sD   rN   c                 C   s|   | D ]2}t |r$|d |kr#|d |u r d S tjd|f dd  nq||kr4tjd|f dd  nq| ||f d S )Nr   r0   z8[3] libraries list contains %r with different build_inforV   rW   z1[4] libraries list contains %r with no build_inforY   )rD   rT   rU   rS   r+   r+   r,   rM      s*   rM   r   )F)/r3   Zdistutils.corer   modulesZhave_setuptoolsr   r   rO   Zsetuptools.commandr   r   ImportErrorrZ   r;   distutils.distZnumpy.distutils.extensionr   Z"numpy.distutils.numpy_distributionr   Znumpy.distutils.commandr	   r
   r   r   r   r   r   r   r   r   r   r   r   r   Znumpy.distutils.misc_utilr   r   r   r   rF   r   r   r#   r:   r@   rN   rM   r+   r+   r+   r,   <module>   s`    
@





@