????

Your IP : 216.73.216.152


Current Path : /proc/self/root/proc/self/root/lib/python2.7/site-packages/pip/_internal/
Upload File :
Current File : //proc/self/root/proc/self/root/lib/python2.7/site-packages/pip/_internal/build_env.pyc

�
}�\]c@sedZddlZddlZddlZddlZddlmZddlmZddl	m
Z
ddlmZm
Z
mZddlmZddlmZdd	lmZdd
lmZddlmZerddlmZmZmZmZmZdd
l m!Z!nej"e#�Z$ddd��YZ%de&fd��YZ'de'fd��YZ(dS(s;Build Environment used for isolation during sdist building
i����N(tOrderedDict(tget_python_lib(t	get_paths(tRequirementtVersionConflictt
WorkingSet(t__file__(tcall_subprocess(t
TempDirectory(tMYPY_CHECK_RUNNING(topen_spinner(tTupletSettIterabletOptionaltList(t
PackageFindert_PrefixcBseZd�ZRS(cCs�||_t|_ttjdkr*dnddi|d6|d6�d|_tdtd|�}tdtd|�}||kr�|g|_	n||g|_	dS(	Ntnttposix_prefixtvarstbasetplatbasetscriptst
plat_specifictprefix(
tpathtFalsetsetupRtostnametbin_dirRtTruetlib_dirs(tselfRtpurelibtplatlib((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyt__init__s		
(t__name__t
__module__R%(((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyRstBuildEnvironmentcBsDeZdZd�Zd�Zd�Zd�Zd�Zd�ZRS(sFCreates and manages an isolated environment to install build deps
    c
sctdd��_�jj�t�fd�dD���_g�_g�_xItt�jj	���D],}�jj
|j��jj|j
�qlWd�tdt�tdt�fD�}tjj�jjd��_tjj�j�s
tj�j�nttjj�jd	�d
��2}|jtjd�jd|d
�j��WdQXdS(Ntkinds	build-envc3s6|],}|ttjj�jj|��fVqdS(N(RRRtjoint	_temp_dir(t.0R(R"(s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pys	<genexpr>9stnormaltoverlaycSs"h|]}tjj|��qS((RRtnormcase(R,tsite((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pys	<setcomp>Gs	RR0ssitecustomize.pytws�
                import os, site, sys

                # First, drop system-sites related paths.
                original_sys_path = sys.path[:]
                known_paths = set()
                for path in {system_sites!r}:
                    site.addsitedir(path, known_paths=known_paths)
                system_paths = set(
                    os.path.normcase(path)
                    for path in sys.path[len(original_sys_path):]
                )
                original_sys_path = [
                    path for path in original_sys_path
                    if os.path.normcase(path) not in system_paths
                ]
                sys.path = original_sys_path

                # Second, add lib directories.
                # ensuring .pth file are processed.
                for path in {lib_dirs!r}:
                    assert not path in sys.path
                    site.addsitedir(path)
                tsystem_sitesR!(snormalsoverlay(RR+tcreateRt	_prefixest	_bin_dirst	_lib_dirstreversedtlisttvaluestappendRtextendR!RRR RRR*t	_site_dirtexiststmkdirtopentwritettextwraptdedenttformat(R"RR2tfp((R"s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyR%3s(
		"$cCs�d�dD�|_|j}|jd}|rL|j|jtj��n|jg}tjjitjj	|�d6dd6tjj	|�d6�dS(NcSs(i|]}tjj|d�|�qS(N(RtenvirontgettNone(R,R((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pys
<dictcomp>ms	tPATHtPYTHONNOUSERSITEt
PYTHONPATHt1(sPATHsPYTHONNOUSERSITEs
PYTHONPATH(
t	_save_envR5R;tsplitRtpathsepR<REtupdateR*(R"Rtold_patht
pythonpath((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyt	__enter__ks


cCsSxL|jj�D];\}}|dkr>tjj|d�q|tj|<qWdS(N(RLtitemsRGRREtpop(R"texc_typetexc_valtexc_tbtvarnamet	old_value((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyt__exit__~scCs|jj�dS(N(R+tcleanup(R"((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyR[�scCs�t�}t�}|r�t|j�}x�|D]�}y2|jtj|��dkre|j|�nWq.tk
r�}|jt	|j
dj��t	|j
d�f�q.Xq.Wn||fS(s�Return 2 sets:
            - conflicting requirements: set of (installed, wanted) reqs tuples
            - missing requirements: set of reqs
        iiN(tsetRR6tfindRtparseRGtaddRtstrtargstas_requirement(R"treqstmissingtconflictingtwstreqte((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pytcheck_requirements�s		
"cCs�|j|}|jst�t|_|s0dStjtjjt	�dddd|jdg}t
j�tj
kr�|jd�nx[dD]S}t|j|�}|jd	|jd
d�djt|p�d
h��f�q�W|j}	|	r4|jd|	dg�x5|	dD]}
|jd|
g�qWn
|jd�x$|jD]}|jd|g�qKWx$|jD]}|jd|g�qrW|jr�|jd�n|jd	�|j|�t|��}
t|d|
�WdQXdS(Ntinstalls--ignore-installeds	--no-users--prefixs--no-warn-script-locations-vt	no_binarytonly_binarys--t_t-t,s:none:s-iiis--extra-index-urls
--no-indexs--find-linkss--trusted-hosts--pretspinner(s	no_binarysonly_binary(R4RtAssertionErrorR tsyst
executableRRtdirnametpip_locationtloggertgetEffectiveLeveltloggingtDEBUGR:tgetattrtformat_controlR;treplaceR*tsortedt
index_urlst
find_linkst
trusted_hoststallow_all_prereleasesR
R(R"tfindertrequirementstprefix_as_stringtmessageRRaR{tformatsR~textra_indextlinkthostRp((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pytinstall_requirements�s<
		
&	
	

(	R&R't__doc__R%RRRZR[RiR�(((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyR(/s	8				tNoOpBuildEnvironmentcBs;eZdZd�Zd�Zd�Zd�Zd�ZRS(s5A no-op drop-in replacement for BuildEnvironment
    cCsdS(N((R"((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyR%�scCsdS(N((R"((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyRR�scCsdS(N((R"RURVRW((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyRZ�scCsdS(N((R"((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyR[�scCs
t��dS(N(tNotImplementedError(R"R�R�RR�((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyR��s(R&R'R�R%RRRZR[R�(((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyR��s				(()R�RxRRrRAtcollectionsRtdistutils.sysconfigRt	sysconfigRtpip._vendor.pkg_resourcesRRRtpipRRutpip._internal.utils.miscRtpip._internal.utils.temp_dirRtpip._internal.utils.typingR	tpip._internal.utils.uiR
ttypingRRR
RRtpip._internal.indexRt	getLoggerR&RvRtobjectR(R�(((s6/tmp/pip-install-ewDPok/pip/pip/_internal/build_env.pyt<module>s((�