U C^& @sddlmZmZmZddlZddlTdejkrvdZddlm Z ddl m Z zddl m Z Wqek rrd ZYqXnddlm Z d ZddlZddlZddlZdd lmZdd lmZdd lmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$dd l%m&Z&m'Z'm(Z(ejejejej)ej*ejejejejeje j e!j!e$j$e"j"e#j#dZ+erddlm,Z,m-Z-e j e+d<e,j,e+d<e j e+d<e-j-e+d<ddZ.d ddZ/d!ddZ0ddZ ddZ1ddZ2dS)")divisionabsolute_importprint_functionN)* 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)get_data_files is_sequence is_string)rrr config_cc config_fcr rrrrrrrrr)developegg_infor rrr cKs|D]\}}||kr"|||<q||}t|trF|t|||<qt|trb|t|||<qt|trzt|f|qt|r||||<qttt |qdS)N) items isinstancetuplelistdict _dict_appendr TypeErrorreprtype)dkwskvZdvr.7/tmp/pip-install-6_kvzl1k/numpy/numpy/distutils/core.pyr&9s   r&cCs|r |dS|dkrg}d}ddtjD}tjD]}|dr2|d|dq2tjD]&}|dsv|d ksv||krXd }qqX|||S) zT Return True if command line does not contain any help or display requests. rNTcSsg|] }d|qS)z--r.).0nr.r.r/ Ssz$_command_line_ok..-z--helpz-hF) Distributiondisplay_option_namesdisplay_optionsappendsysargv startswith)_cacheokZ display_optsoargr.r.r/_command_line_okJs   r@cCs6tjj}|dk r dt|kr d}|r2|dkr2t}|S)NZDistributionWithoutHelpCommands) distutilscore_setup_distributionr(r )alwaysdistr.r.r/get_distribution^s  rFcKst}|}d|kr&||d||d<d|kr|d}tjj}tjj}dtj_dtj_ztf|}W5|tj_|tj_X|j st s|S|}t |dr| }t |f|g}|dgD]h} g} | jD]R} t| r| \} } t|| | | | qt| r| | qtd| fq| | _q|rbd|krHg|d<|D]} t|d| qLd|ksvd|krd|krg|d<t|d <tf|S) Ncmdclass configuration commandlinetodict ext_modulesz2invalid description of extension module library %r librariesheaders distclass)numpy_cmdclasscopyupdatepoprArBrC_setup_stop_afterrhelpr@hasattrrJr&getrLr_check_append_ext_libraryr8rr'_check_append_libraryr old_setup)attrrGnew_attrrHZold_distZold_stoprEr rLextZ new_librariesitemlib_name build_infor.r.r/rms\            rcCs|D]}t|rt|r\|d|dkr|d|dkr>dStjd|dfddqq||dkrtjd|dfddqqt|r|d|krtjd|dfddqq||krdSq||dS)Nrr3z8[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_inforwarningswarnr8)rLr]Zlibitemr.r.r/rXs<  rXcCs||D]d}t|rH|d|krh|d|kr.dStjd|fddqjq||krtjd|fddqjq|||fdS)Nrr3z8[3] libraries list contains %r with different build_infor`raz1[4] libraries list contains %r with no build_inforc)rLr^r_r]r.r.r/rWs&  rW)N)F)3 __future__rrrr9distutils.coremodulesZhave_setuptoolsrrrYZsetuptools.commandrr ImportErrorrdrAdistutils.distZnumpy.distutils.extensionr Z"numpy.distutils.numpy_distributionr Znumpy.distutils.commandr r rrrrrrrrrrrrZnumpy.distutils.misc_utilrrrrrrOrr r&r@rFrXrWr.r.r.r/s^       @      @