a :jg@sddlZddlmZdejvrddZddlmZddlm Z zddlm Z Wqte y`dZYqt0nddlmZdZddl Z ddlZ ddlZ dd lmZdd lmZdd lmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!dd l"m#Z#m$Z$ejejejej%ej&ejejejejejejeje!j!eje j d Z'ertddlm(Z(m)Z)e j e'd<e(j(e'd<e j e'd<e)j)e'd<ddZ*dddZ+d ddZ,ddZddZ-ddZ.dS)!N) Distribution setuptoolsT)setup) easy_install) bdist_eggF) Extension)NumpyDistribution)configconfig_compilerbuildbuild_py build_ext build_clib build_src build_scriptssdist install_datainstall_headersinstall bdist_rpm install_clib) is_sequence is_string)r rr config_cc config_fcr r r rrrrrrr)developegg_inforrrrcKs|D]\}}||vr"|||<q||}t|trF|t|||<qt|trb|t|||<qt|tr~t|fi|qt|r||||<qttt |qdS)N) items isinstancetuplelistdict _dict_appendr TypeErrorreprtype)dkwskvZdvr*>/usr/local/lib/python3.9/site-packages/numpy/distutils/core.pyr"7s   r"cCs|r |dS|durg}d}ddtjD}tjD]}|dr2|d|dq2tjD]&}|dsv|d ksv||vrXd }qqX|||S) zT Return True if command line does not contain any help or display requests. rNTcSsg|] }d|qS)z--r*).0nr*r*r+ Qz$_command_line_ok..-z--helpz-hF)rdisplay_option_namesdisplay_optionsappendsysargv startswith)_cacheokZ display_optsoargr*r*r+_command_line_okHs   r<cCs6tjj}|dur dt|vr d}|r2|dur2t}|S)NZDistributionWithoutHelpCommands) distutilscore_setup_distributionr$r)alwaysdistr*r*r+get_distribution\s  rBcKst}|}d|vr&||d||d<d|vr|d}tjj}tjj}dtj_dtj_z"tfi|}W|tj_|tj_n|tj_|tj_0|j st s|S|}t |dr| }t |fi|g}|dgD]h} g} | jD]R} t| r| \} } t|| | | | qt| r0| | qtd| fq| | _q|rzd|vr`g|d<|D]} t|d| qdd|vsd|vrd|vrg|d<t|d <tfi|S) Ncmdclass configuration commandlinetodict ext_modulesz2invalid description of extension module library %r librariesheaders distclass)numpy_cmdclasscopyupdatepopr=r>r?_setup_stop_afterrhelpr<hasattrrFr"getrHr_check_append_ext_libraryr4rr#_check_append_libraryr old_setup)attrrCnew_attrrDZold_distZold_stoprAr rHextZ new_librariesitemlib_name build_infor*r*r+rks`            rcCs|D]}t|rt|r\|d|dkr|d|dur>dStjd|dfddqq||dkrtjd|dfddqqt|r|d|krtjd|dfddqq||krdSq||dS)Nrr0z8[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_inforwarningswarnr4)rHrYZlibitemr*r*r+rTs<  rTcCs||D]d}t|rH|d|krh|d|ur.dStjd|fddqjq||krtjd|fddqjq|||fdS)Nrr0z8[3] libraries list contains %r with different build_infor\r]z1[4] libraries list contains %r with no build_infor_)rHrZr[rYr*r*r+rSs&  rS)N)F)/r5distutils.corermodulesZhave_setuptoolsrrrUZsetuptools.commandrr ImportErrorr`r=distutils.distZnumpy.distutils.extensionrZ"numpy.distutils.numpy_distributionrZnumpy.distutils.commandr r r r r rrrrrrrrrZnumpy.distutils.misc_utilrrrrrKrrr"r<rBrTrSr*r*r*r+s\         @      @