§
    ZQdRx  ã            
       ó  — d Z ddl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
 ddlmZmZ ddlmZ ddlmZ dd	lmZmZmZ dd
lmZ ddlmZ ddlmZ ddlmZ eduZdZi i i dœZddddddddddœ	ed<   ddddddddddœ	ed<   eD ]6Zd D ]1\  ZZ eZ!ej"        e          Z#ed!k    ree#vrd"Z!e#e!         ee         e<   Œ2Œ7eD ]�Z$ee$          %                    ¦   «         D ]€\  ZZ& ej'        d#d$e&¦  «        Z&e& (                    d%d&¦  «        Z&e& (                    d'd(¦  «        Z&ed!k    re&d)z  Z&ej)        d*k    red+k    re& (                    d,d-¦  «        Z&e&ee$         e<   Œ�Œžerd.d.d/d0d1dœed2<   d.d.d3d4d1dœed5<    G d6„ d7e¦  «        Z*dS )8zFdistutils.command.install

Implements the Distutils 'install' command.é    N)Úlog)ÚCommand)ÚDEBUG)Úget_config_varsÚis_virtual_environment)ÚDistutilsPlatformError)Ú
write_file)Úconvert_pathÚ
subst_varsÚchange_root)Úget_platform)ÚDistutilsOptionError)Ú	USER_BASE)Ú	USER_SITE)ÚpurelibÚplatlibÚheadersÚscriptsÚdata)Úunix_prefixÚ	unix_homeÚntz6{installed_base}/{platlibdir}/python{py_version_short}z0{platbase}/{platlibdir}/python{py_version_short}z7{base}/local/lib/python{py_version_short}/dist-packageszD{platbase}/local/{platlibdir}/python{py_version_short}/dist-packagesz;{installed_base}/include/python{py_version_short}{abiflags}z7{base}/local/include/python{py_version_short}{abiflags}z?{installed_platbase}/include/python{py_version_short}{abiflags}z{base}/local/binz{base}/local)	ÚstdlibÚ
platstdlibr   r   Úincluder   Úplatincluder   r   Ú
unix_localz {base}/lib/python3/dist-packagesz-{platbase}/{platlibdir}/python3/dist-packagesz
{base}/binz{base}Ú
deb_system))r   Úposix_prefix)r   Ú
posix_home)r   r   r   r   z	\{(.+?)\}z$\g<1>z$installed_basez$basez$py_version_nodot_platz$py_version_nodotz/$dist_name)é   é	   r   z/lib/z/$platlibdir/z	$usersitez4$userbase/Python$py_version_nodot/Include/$dist_namez)$userbase/Python$py_version_nodot/Scriptsz	$userbaseÚnt_userz=$userbase/include/python$py_version_short$abiflags/$dist_namez$userbase/binÚ	unix_userc                   ó0  — e Zd ZdZg d¢Zg d¢Zer0e                     dddez  f¦  «         e                     d¦  «         ddiZ	d	„ Z
d
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zdefdefd efd!efd"d#„ fgZdS )$Úinstallz'install everything from build directory))zprefix=Nzinstallation prefix)zexec-prefix=Nz.(Unix only) prefix for platform-specific files)zhome=Nz+(Unix only) home directory to install under)zinstall-base=Nz;base installation directory (instead of --prefix or --home))zinstall-platbase=Nz\base installation directory for platform-specific files (instead of --exec-prefix or --home))zroot=Nz<install everything relative to this alternate root directory)zinstall-purelib=Nz;installation directory for pure Python module distributions)zinstall-platlib=Nz8installation directory for non-pure module distributions)zinstall-lib=Nzginstallation directory for all module distributions (overrides --install-purelib and --install-platlib))zinstall-headers=Nz(installation directory for C/C++ headers)zinstall-scripts=Nz)installation directory for Python scripts)zinstall-data=Nz%installation directory for data files)ÚcompileÚczcompile .py to .pyc [default])ú
no-compileNzdon't compile .py files)z	optimize=ÚOzlalso compile with optimization: -O1 for "python -O", -O2 for "python -OO", and -O0 to disable [default: -O0])ÚforceÚfz1force installation (overwrite any existing files))ú
skip-buildNz2skip rebuilding everything (for testing/debugging))zrecord=Nz3filename in which to record list of installed files)zinstall-layout=Nz7installation layout to choose (known values: deb, unix))r'   r+   r-   ÚuserNz!install in user site-package '%s'r)   r'   c                 ó°  — d| _         d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _	        d| _
        d| _        d| _        d| _        t          rt          | _        t"          | _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        dS )zInitializes options.Nr   é   )ÚprefixÚexec_prefixÚhomer.   Úprefix_optionÚinstall_baseÚinstall_platbaseÚrootÚinstall_purelibÚinstall_platlibÚinstall_headersÚinstall_libÚinstall_scriptsÚinstall_dataÚHAS_USER_SITEr   Úinstall_userbaser   Úinstall_usersiteÚinstall_layoutÚ	multiarchr'   ÚoptimizeÚ
extra_pathÚinstall_path_filer+   Ú
skip_buildÚwarn_dirÚ
build_baseÚ	build_libÚrecord©Úselfs    ú0/usr/lib/python3.11/distutils/command/install.pyÚinitialize_optionszinstall.initialize_options¾   sð   € ð ˆŒØˆÔØˆŒ	ØˆŒ	Ø!ˆÔð
 !ˆÔØ $ˆÔØˆŒ	ð  $ˆÔØ#ˆÔØ#ˆÔØˆÔØ#ˆÔØ ˆÔÝð 	.Ý$-ˆDÔ!Ý$-ˆDÔ!ð #ˆÔØˆŒàˆŒØˆŒð ˆŒØ!"ˆÔð ˆŒ
ØˆŒØˆŒð ˆŒØˆŒð ˆŒˆˆó    c                 ó0  — | j         s| j        s| j        r| j        s| j        rt          d¦  «        ‚| j        r| j         s| j        rt          d¦  «        ‚| j        r2| j         s| j        s| j        s| j        s| j        rt          d¦  «        ‚t          j        dk    r#| j        r|  	                    d¦  «         d| _        |  
                    d¦  «         t          j        dk    r|                      ¦   «          n|                      ¦   «          |  
                    d¦  «         t          j                             ¦   «         d	         }t!          d
d¦  «        \  }}	 t          j        }n# t$          $ r d}Y nw xY w| j                             ¦   «         | j                             ¦   «         | j                             ¦   «         |dt          j        dd…         z  dt          j        dd…         z  |||||t          j        dœ| _        t4          r| j        | j        d<   | j        | j        d<   t;          j        d¦  «        rt;          j        d¦  «        | j        d<   |                       ¦   «          |  
                    d¦  «         | j        | j        d<   | j        | j        d<   tB          r%d	dl"m"} tG          d¦  «          || j        ¦  «         |  $                    ¦   «          |  
                    d¦  «         | j        r|  %                    ¦   «          | j&        €%| j        j'        r| j(        | _&        n| j)        | _&        |  *                    dddddd ¦  «         t4          r|  *                    dd¦  «         |  +                    ¦   «          | j&        | _,        t          j-         .                    | j&        | j/        ¦  «        | _&        | j0        �|  1                    d!dddddd ¦  «         |  
                    d"¦  «         |  2                    d#d$d%¦  «         dS )&zFinalizes options.zWmust supply either prefix/exec-prefix/home or install-base/install-platbase -- not bothz9must supply either home or prefix/exec-prefix -- not bothzGcan't combine user with prefix, exec_prefix/home, or install_(plat)baseÚposixz+exec-prefix option ignored on this platformNzpre-finalize_{unix,other}zpost-finalize_{unix,other}()r   r1   r2   Ú z%d.%dé   z%d%d)Ú	dist_nameÚdist_versionÚdist_fullnameÚ
py_versionÚpy_version_shortÚpy_version_nodotÚ
sys_prefixr1   Úsys_exec_prefixr2   ÚabiflagsÚ
platlibdirÚuserbaseÚusersiteTÚsrcdirzpost-expand_basedirs()ÚbaseÚplatbase)Úpprintzconfig vars:zpost-expand_dirs()Úlibr   r   r   r   r   Úlibbasezafter prepending rootÚbuild)rH   rH   )rI   rI   )3r1   r2   r3   r5   r6   r   r.   ÚosÚnameÚwarnÚ	dump_dirsÚfinalize_unixÚfinalize_otherÚsysÚversionÚsplitr   r\   ÚAttributeErrorÚdistributionÚget_nameÚget_versionÚget_fullnameÚversion_infor]   Úconfig_varsr>   r?   r@   Ú	sysconfigÚis_python_buildÚget_config_varÚexpand_basedirsr   rc   ÚprintÚexpand_dirsÚcreate_home_pathr;   Úext_modulesr9   r8   Úconvert_pathsÚhandle_extra_pathÚinstall_libbaseÚpathÚjoinÚ
extra_dirsr7   Úchange_rootsÚset_undefined_options)rL   rW   r1   r2   r\   rc   s         rM   Úfinalize_optionszinstall.finalize_options  s©  € ð  Œ[ð 	@˜DÔ,ð 	@°´	ð 	@ØÔð	@Ø"&Ô"7ð	@å&ð?ñ@ô @ð @ð Œ9ð 	O˜$œ+ð 	O¨Ô)9ð 	OÝ&ØMñOô Oð Oð Œ9ð 	R˜$œ+ð 	R¨Ô)9ð 	R¸T¼Yð 	RØÔ!ð	RØ%)Ô%:ð	Rå&ð (Qñ Rô Rð Rõ Œ7�gÒÐØÔð (Ø—	’	ÐGÑHÔHÐHØ#'�Ô ð 	�ŠÐ2Ñ3Ô3Ð3åŒ7�gÒÐØ×ÒÑ Ô Ð Ð à×ÒÑ!Ô!Ð!à�ŠÐ5Ñ6Ô6Ð6õ ”[×&Ò&Ñ(Ô(¨Ô+ˆ
Ý /°¸-Ñ HÔ HÑˆ�ð	Ý”|ˆHˆHøÝð 	ð 	ð 	àˆHˆHˆHð	øøøð *.Ô):×)CÒ)CÑ)EÔ)EØ,0Ô,=×,IÒ,IÑ,KÔ,KØ-1Ô->×-KÒ-KÑ-MÔ-MØ*4Ø07½#Ô:JÈ2ÈAÈ2Ô:NÑ0NØ06½Ô9IÈ"È1È"Ô9MÑ0MØ*0Ø&,Ø/:Ø+6Ø(0Ý*-¬.ðð ˆÔõ ð 	AØ+/Ô+@ˆDÔ˜ZÑ(Ø+/Ô+@ˆDÔ˜ZÑ(åÔ$ TÑ*Ô*ð 	LÝ)2Ô)AÀ(Ñ)KÔ)KˆDÔ˜XÑ&à×ÒÑÔÐà�ŠÐ/Ñ0Ô0Ð0ð $(Ô#4ˆÔ˜Ñ Ø'+Ô'<ˆÔ˜Ñ$åð 	%Ø%Ð%Ð%Ð%Ð%Ð%Ý�.Ñ!Ô!Ð!ØˆF�4Ô#Ñ$Ô$Ð$ð 	×ÒÑÔÐà�ŠÐ+Ñ,Ô,Ð,ð Œ9ð 	$Ø×!Ò!Ñ#Ô#Ð#ð ÔÐ#ØÔ Ô,ð 8Ø#'Ô#7�Ô Ð à#'Ô#7�Ô ð
 	×Ò˜5 )¨YØ$ f¨iñ	9ô 	9ð 	9åð 	7Ø×Ò˜z¨:Ñ6Ô6Ð6ð 	×ÒÑ Ô Ð Ø#Ô/ˆÔÝœ7Ÿ<š<¨Ô(8¸$¼/ÑJÔJˆÔð Œ9Ð Ø×Ò˜i¨°	¸9Ø'¨°ñ<ô <ð <ð 	�ŠÐ.Ñ/Ô/Ð/ð 	×"Ò" 7Ø#?Ø#=ñ	?ô 	?ð 	?ð 	?ð 	?s   ÅE+ Å+E:Å9E:c                 ó’  — t           sdS ddlm} t          j        |dz   ¦  «         | j        D ]˜}|d         }|d         dk    r
|dd…         }|| j        v r4| j        |         }|                     |¦  «        }t          | |¦  «         }n%|                     |¦  «        }t          | |¦  «        }t          j        d||¦  «         Œ™dS )zDumps the list of user options.Nr   )Úlongopt_xlateú:éÿÿÿÿú=z  %s: %s)	r   Údistutils.fancy_getoptr‰   r   ÚdebugÚuser_optionsÚnegative_optÚ	translateÚgetattr)rL   Úmsgr‰   ÚoptÚopt_nameÚvals         rM   rj   zinstall.dump_dirs¬  sñ   € åð 	ØˆFØ8Ð8Ð8Ð8Ð8Ð8ÝŒ	�#˜‘)ÑÔÐØÔ$ð 	1ð 	1ˆCØ˜1”vˆHØ˜Œ|˜sÒ"Ð"Ø# A b Dœ>�Ø˜4Ô,Ð,Ð,ØÔ,¨XÔ6�Ø#×-Ò-¨mÑ<Ô<�Ý! $¨Ñ1Ô1Ð1��à#×-Ò-¨mÑ<Ô<�Ý˜d HÑ-Ô-�ÝŒI�j (¨CÑ0Ô0Ð0Ð0ð	1ð 	1rO   c                 ój  — | j         €| j        �;| j        €| j        €| j        �| j        �| j        �| j        €t          d¦  «        ‚dS | j	        r@| j
        €t          d¦  «        ‚| j
        x| _         | _        |                      d¦  «         dS | j        �*| j        x| _         | _        |                      d¦  «         dS | j        | _        | j        €s| j        �t          d¦  «        ‚t"          j                             t(          j        ¦  «        | _        t"          j                             t(          j        ¦  «        | _        n| j        €| j        | _        | j        | _         | j        | _        | j        rŒ| j                             ¦   «         dv r0ddl} |j        d	¦  «        | _        |                      d
¦  «         dS | j                             ¦   «         dv r|                      d¦  «         dS t          d¦  «        ‚| j        r(t"          j                             | j        ¦  «        dk    st5          ¦   «         r|                      d¦  «         dS t"          j                             | j        ¦  «        dk    rdx| _        | _        dx| _         | _        |                      d¦  «         dS )z&Finalizes options for posix platforms.NzPinstall-base or install-platbase supplied, but installation scheme is incompleteú$User base directory is not specifiedr$   r   z*must not supply exec-prefix without prefix)Údebr   Ú	MULTIARCHr   )Úunixr   z"unknown value for --install-layoutz
/usr/localz/usrr   )r5   r6   r;   r8   r9   r:   r<   r=   r   r.   r?   r   Úselect_schemer3   r1   r4   r2   rg   r‚   Únormpathrm   rA   Úlowerrw   ry   rB   r   )rL   rw   s     rM   rk   zinstall.finalize_unix¿  sÔ  € àÔÐ(¨DÔ,AÐ,MØÔ!Ð)ØÔ%Ð-ØÔ%Ð-ØÔ$Ð,ØÔ$Ð,ØÔ!Ð)Ý*ð:ñ;ô ;ð ;ð ˆFàŒ9ð +	1ØÔ$Ð,Ý,Ø:ñ<ô <ð <à8<Ô8MÐMˆDÔ Ô 5Ø×Ò˜{Ñ+Ô+Ð+Ð+Ð+ØŒYÐ"Ø8<¼	ÐAˆDÔ Ô 5Ø×Ò˜{Ñ+Ô+Ð+Ð+Ð+à!%¤ˆDÔØŒ{Ð"ØÔ#Ð/Ý.ØFñHô Hð Hõ !œg×.Ò.­s¬zÑ:Ô:�”Ý#%¤7×#3Ò#3µC´OÑ#DÔ#D�Ô Ð ð Ô#Ð+Ø'+¤{�DÔ$à $¤ˆDÔØ$(Ô$4ˆDÔ!ØÔ"ð 1ØÔ&×,Ò,Ñ.Ô.°'Ð9Ð9Ø$Ð$Ð$Ð$Ø%= YÔ%=¸kÑ%JÔ%J�D”NØ×&Ò& |Ñ4Ô4Ð4Ð4Ð4ØÔ(×.Ò.Ñ0Ô0°HÐ<Ð<Ø×&Ò& }Ñ5Ô5Ð5Ð5Ð5å.Ø<ñ>ô >ð >àÔ%ð 1Ý”7×#Ò# D¤KÑ0Ô0°LÒ@Ð@Ý+Ñ-Ô-ð Aà×"Ò" =Ñ1Ô1Ð1Ð1Ð1å”7×#Ò# D¤KÑ0Ô0°LÒ@Ð@Ø5;Ð;�D”K $Ô"2Ø@FÐF�DÔ%¨Ô(=Ø×"Ò" <Ñ0Ô0Ð0Ð0Ð0rO   c                 ó4  — | j         rM| j        €t          d¦  «        ‚| j        x| _        | _        |                      t          j        dz   ¦  «         dS | j        �*| j        x| _        | _        |                      d¦  «         dS | j	        €.t          j
                             t          j	        ¦  «        | _	        | j	        x| _        | _        	 |                      t          j        ¦  «         dS # t          $ r t          dt          j        z  ¦  «        ‚w xY w)z)Finalizes options for non-posix platformsNr˜   Ú_userr   z)I don't know how to install stuff on '%s')r.   r?   r   r5   r6   rœ   rg   rh   r3   r1   r‚   r�   rm   ÚKeyErrorrK   s    rM   rl   zinstall.finalize_otherú  s&  € àŒ9ð 	MØÔ$Ð,Ý,Ø:ñ<ô <ð <à8<Ô8MÐMˆDÔ Ô 5Ø×Ò�rœw¨Ñ0Ñ1Ô1Ð1Ð1Ð1ØŒYÐ"Ø8<¼	ÐAˆDÔ Ô 5Ø×Ò˜{Ñ+Ô+Ð+Ð+Ð+àŒ{Ð"Ý œg×.Ò.­s¬zÑ:Ô:�”à8<¼ÐCˆDÔ Ô 5ðMØ×"Ò"¥2¤7Ñ+Ô+Ð+Ð+Ð+øÝð Mð Mð MÝ,ØAÅBÄGÑKñMô Mð MðMøøøs   ÃC0 Ã0'Dc                 óŒ   — t           |         }t          D ].}d|z   }t          | |¦  «        €t          | |||         ¦  «         Œ/dS )z=Sets the install directories by applying the install schemes.Úinstall_N)ÚINSTALL_SCHEMESÚSCHEME_KEYSr’   Úsetattr)rL   rh   ÚschemeÚkeyÚattrnames        rM   rœ   zinstall.select_scheme  sX   € õ ! Ô&ˆÝð 	5ð 	5ˆCØ! CÑ'ˆHÝ�t˜XÑ&Ô&Ð.Ý˜˜h¨¨s¬Ñ4Ô4Ð4øð	5ð 	5rO   c                 óþ   — |D ]y}t          | |¦  «        }|�et          j        dk    st          j        dk    rt          j                             |¦  «        }t          || j        ¦  «        }t          | ||¦  «         Œzd S )NrQ   r   )r’   rg   rh   r‚   Ú
expanduserr   rv   r¦   )rL   ÚattrsÚattrr–   s       rM   Ú_expand_attrszinstall._expand_attrs  s€   € Øð 	)ð 	)ˆDÝ˜$ Ñ%Ô%ˆCØˆÝ”7˜gÒ%Ð%­¬°Dª¨Ýœ'×,Ò,¨SÑ1Ô1�CÝ   dÔ&6Ñ7Ô7�Ý˜˜d CÑ(Ô(Ð(øð	)ð 	)rO   c                 ó4   — |                       g d¢¦  «         dS )zNCalls `os.path.expanduser` on install_base, install_platbase and
        root.)r5   r6   r7   N©r®   rK   s    rM   rz   zinstall.expand_basedirs"  s%   € ð 	×ÒÐGÐGÐGÑHÔHÐHÐHÐHrO   c                 ó4   — |                       g d¢¦  «         dS )z+Calls `os.path.expanduser` on install dirs.)r8   r9   r;   r:   r<   r=   Nr°   rK   s    rM   r|   zinstall.expand_dirs'  s;   € à×Òð @ð @ð @ñ 	Aô 	Að 	Að 	Að 	ArO   c                 ór   — |D ]3}d|z   }t          | |t          t          | |¦  «        ¦  «        ¦  «         Œ4dS )z!Call `convert_path` over `names`.r£   N)r¦   r
   r’   ©rL   Únamesrh   r­   s       rM   r   zinstall.convert_paths-  sP   € àð 	Cð 	CˆDØ Ñ$ˆDÝ�D˜$¥­W°T¸4Ñ-@Ô-@Ñ AÔ AÑBÔBÐBÐBð	Cð 	CrO   c                 óÖ  — | j         €| j        j         | _         | j         �·t          j        d¦  «         t	          | j         t
          ¦  «        r| j                              d¦  «        | _         t          | j         ¦  «        dk    r| j         d         x}}n2t          | j         ¦  «        dk    r| j         \  }}nt          d¦  «        ‚t          |¦  «        }nd}d}|| _
        || _        dS )	z4Set `path_file` and `extra_dirs` using `extra_path`.NzIDistribution option extra_path is deprecated. See issue27919 for details.ú,r0   r   rS   zY'extra_path' option must be a list, tuple, or comma-separated string with 1 or 2 elementsrR   )rD   rq   r   ri   Ú
isinstanceÚstrro   Úlenr   r
   Ú	path_filer„   )rL   rº   r„   s      rM   r€   zinstall.handle_extra_path3  sú   € àŒ?Ð"Ø"Ô/Ô:ˆDŒOàŒ?Ð&ÝŒHð.ñô ð õ ˜$œ/­3Ñ/Ô/ð =Ø"&¤/×"7Ò"7¸Ñ"<Ô"<�”å�4”?Ñ#Ô# qÒ(Ð(Ø)-¬¸Ô);Ð;�	˜J˜JÝ�T”_Ñ%Ô%¨Ò*Ð*Ø(,¬Ñ%�	˜:˜:å*ðDñEô Eð Eõ & jÑ1Ô1ˆJˆJàˆIØˆJð #ˆŒØ$ˆŒˆˆrO   c                 ó~   — |D ]9}d|z   }t          | |t          | j        t          | |¦  «        ¦  «        ¦  «         Œ:dS )z:Change the install directories pointed by name using root.r£   N)r¦   r   r7   r’   r³   s       rM   r…   zinstall.change_rootsU  sT   € àð 	Mð 	MˆDØ Ñ$ˆDÝ�D˜$¥¨D¬Iµw¸tÀTÑ7JÔ7JÑ KÔ KÑLÔLÐLÐLð	Mð 	MrO   c                 óp  — | j         sdS t          t          j                             d¦  «        ¦  «        }| j                             ¦   «         D ]f\  }}|                     |¦  «        rLt          j                             |¦  «        s-|  	                    d|z  ¦  «         t          j
        |d¦  «         ŒgdS )zCreate directories under ~.Nú~zos.makedirs('%s', 0o700)iÀ  )r.   r
   rg   r‚   r«   rv   ÚitemsÚ
startswithÚisdirÚdebug_printÚmakedirs)rL   r3   rh   r‚   s       rM   r}   zinstall.create_home_path[  s°   € àŒyð 	ØˆFÝ�BœG×.Ò.¨sÑ3Ô3Ñ4Ô4ˆØÔ*×0Ò0Ñ2Ô2ð 	)ð 	)‰JˆD�$Ø�Š˜tÑ$Ô$ð )­R¬W¯]ª]¸4Ñ-@Ô-@ð )Ø× Ò Ð!;¸dÑ!BÑCÔCÐCÝ”˜D %Ñ(Ô(Ð(øð	)ð 	)rO   c                 ó  — | j         s\|                      d¦  «         | j                             d¦  «        j        }| j        r!|t          ¦   «         k    rt          d¦  «        ‚|                      ¦   «         D ]}|                      |¦  «         Œ| j	        r|  
                    ¦   «          | j        rŒ|                      ¦   «         }| j        rFt          | j        ¦  «        }t          t          |¦  «        ¦  «        D ]}||         |d…         ||<   Œ|                      t"          | j        |fd| j        z  ¦  «         t%          t&          j        j        t,          j        ¦  «        }t%          t&          j        j        |¦  «        }t&          j                             t&          j                             | j        ¦  «        ¦  «        }| j        r.| j	        r| j        s$||vrt5          j        d| j        ¦  «         dS dS dS dS )zRuns the command.rf   z"Can't install when cross-compilingNz'writing list of installed files to '%s'zƒmodules installed to '%s', which is not in Python's module search path (sys.path) -- you'll have to change the search path yourself)rF   Úrun_commandrq   Úget_command_objÚ	plat_namerG   r   r   Úget_sub_commandsrº   Úcreate_path_filerJ   Úget_outputsr7   r¹   ÚrangeÚexecuter	   Úmaprg   r‚   r�   rm   Únormcaser;   rE   r   rŽ   )rL   Ú
build_platÚcmd_nameÚoutputsÚroot_lenÚcounterÚsys_pathr;   s           rM   Úrunzinstall.rung  s#  € ð Œð 		@Ø×Ò˜WÑ%Ô%Ð%àÔ*×:Ò:¸7ÑCÔCÔMˆJð Œ}ð @ ­|©~¬~Ò!=Ð!=Ý,ð .?ñ @ô @ð @ð ×-Ò-Ñ/Ô/ð 	'ð 	'ˆHØ×Ò˜XÑ&Ô&Ð&Ð&àŒ>ð 	$Ø×!Ò!Ñ#Ô#Ð#ð Œ;ð 		&Ø×&Ò&Ñ(Ô(ˆGØŒyð CÝ˜tœy™>œ>�Ý$¥S¨¡\¤\Ñ2Ô2ð Cð C�GØ'.¨wÔ'7¸¸	¸	Ô'B�G˜GÑ$Ð$Ø�LŠL�Øœ+ wÐ/ØBØœñ%ñ&ô &ð &õ
 •r”wÔ'­¬Ñ2Ô2ˆÝ•r”wÔ'¨Ñ2Ô2ˆÝ”g×&Ò&¥r¤w×'7Ò'7¸Ô8HÑ'IÔ'IÑJÔJˆØŒMð 	)Ø”ð	)Ø$(Ô$:ð	)à˜xÐ'Ð'ÝŒIð Hð Ô'ñ)ô )ð )ð )ð )ð	)ð 	)à'Ð'ð	)ð 	)rO   c                 óð   — t           j                             | j        | j        dz   ¦  «        }| j        r)|                      t          || j        gfd|z  ¦  «         dS |  	                    d|z  ¦  «         dS )zCreates the .pth fileú.pthzcreating %szpath file '%s' not createdN)
rg   r‚   rƒ   r�   rº   rE   rË   r	   r„   ri   )rL   Úfilenames     rM   rÈ   zinstall.create_path_file“  sˆ   € å”7—<’< Ô 4Ø $¤°Ñ 7ñ9ô 9ˆàÔ!ð 	?Ø�LŠL�Ø" T¤_Ð$5Ð6Ø&¨Ñ1ñ3ô 3ð 3ð 3ð 3ð �IŠIÐ2°XÑ=Ñ>Ô>Ð>Ð>Ð>rO   c                 ó^  — g }|                       ¦   «         D ]G}|                      |¦  «        }|                     ¦   «         D ]}||vr|                     |¦  «         ŒŒH| j        rG| j        r@|                     t          j                             | j	        | j        dz   ¦  «        ¦  «         |S )z.Assembles the outputs of all the sub-commands.rÖ   )
rÇ   Úget_finalized_commandrÉ   Úappendrº   rE   rg   r‚   rƒ   r�   )rL   rÐ   rÏ   Úcmdr×   s        rM   rÉ   zinstall.get_outputs¡  sÎ   € àˆØ×-Ò-Ñ/Ô/ð 	-ð 	-ˆHØ×,Ò,¨XÑ6Ô6ˆCð  ŸOšOÑ-Ô-ð -ð -�Ø 7Ð*Ð*Ø—N’N 8Ñ,Ô,Ð,øð-ð Œ>ð 	B˜dÔ4ð 	BØ�NŠN�2œ7Ÿ<š<¨Ô(<Ø(,¬¸Ñ(?ñAô Añ Bô Bð Bð ˆrO   c                 ó°   — g }|                       ¦   «         D ]>}|                      |¦  «        }|                     |                     ¦   «         ¦  «         Œ?|S )z*Returns the inputs of all the sub-commands)rÇ   rÙ   ÚextendÚ
get_inputs)rL   ÚinputsrÏ   rÛ   s       rM   rÞ   zinstall.get_inputs²  s[   € ð ˆØ×-Ò-Ñ/Ô/ð 	,ð 	,ˆHØ×,Ò,¨XÑ6Ô6ˆCØ�MŠM˜#Ÿ.š.Ñ*Ô*Ñ+Ô+Ð+Ð+àˆrO   c                 óf   — | j                              ¦   «         p| j                              ¦   «         S )zSReturns true if the current distribution has any Python
        modules to install.)rq   Úhas_pure_modulesÚhas_ext_modulesrK   s    rM   Úhas_libzinstall.has_lib¾  s2   € ð Ô!×2Ò2Ñ4Ô4ð 4ØÔ!×1Ò1Ñ3Ô3ð	5rO   c                 ó4   — | j                              ¦   «         S )zLReturns true if the current distribution has any headers to
        install.)rq   Úhas_headersrK   s    rM   rå   zinstall.has_headersÄ  ó   € ð Ô ×,Ò,Ñ.Ô.Ð.rO   c                 ó4   — | j                              ¦   «         S )zMReturns true if the current distribution has any scripts to.
        install.)rq   Úhas_scriptsrK   s    rM   rè   zinstall.has_scriptsÉ  ræ   rO   c                 ó4   — | j                              ¦   «         S )zJReturns true if the current distribution has any data to.
        install.)rq   Úhas_data_filesrK   s    rM   Úhas_datazinstall.has_dataÎ  s   € ð Ô ×/Ò/Ñ1Ô1Ð1rO   r;   r:   r<   r=   Úinstall_egg_infoc                 ó   — dS )NT© rK   s    rM   ú<lambda>zinstall.<lambda>Ù  s   € °T€ rO   ) Ú__name__Ú
__module__Ú__qualname__Údescriptionr�   Úboolean_optionsr>   rÚ   r   r�   rN   r‡   rj   rk   rl   rœ   r®   rz   r|   r   r€   r…   r}   rÔ   rÈ   rÉ   rÞ   rã   rå   rè   rë   Úsub_commandsrî   rO   rM   r&   r&   r   s  € € € € € à;€Kð<
ð <
ð <
€Lð| 9Ð8Ð8€Oàð 'Ø×Ò˜V TØ@À9ÑLðNñ 	Oô 	Oð 	Oà×Ò˜vÑ&Ô&Ð&à  9Ð-€LðKð Kð KðhU?ð U?ð U?ðt1ð 1ð 1ð&91ð 91ð 91ðvMð Mð Mð,5ð 5ð 5ð)ð )ð )ðIð Ið Ið
Að Að AðCð Cð Cð %ð  %ð  %ðDMð Mð Mð)ð )ð )ð*)ð *)ð *)ðX	?ð 	?ð 	?ðð ð ð"ð ð ð5ð 5ð 5ð/ð /ð /ð
/ð /ð /ð
2ð 2ð 2ð #¨Ð0Ø&¨Ð4Ø&¨Ð4Ø#¨Ð1Ø'Ð)9Ð)9Ð:ð	€L€L€LrO   r&   )+Ú__doc__rm   rw   rg   ÚreÚ	distutilsr   Údistutils.corer   Údistutils.debugr   Údistutils.sysconfigr   r   Údistutils.errorsr   Údistutils.file_utilr	   Údistutils.utilr
   r   r   r   r   Úsiter   r   r>   r¥   r¤   r¨   Údistutils_scheme_nameÚsys_scheme_nameÚsys_keyÚ_INSTALL_SCHEMESÚ
sys_schemeÚmain_keyr¾   ÚvalueÚsubÚreplaceru   r&   rî   rO   rM   ú<module>r	     s_  ðð/ð /ð €
€
€
Ø Ð Ð Ð Ø 	€	€	€	Ø 	€	€	€	à Ð Ð Ð Ð Ð Ø "Ð "Ð "Ð "Ð "Ð "Ø !Ð !Ð !Ð !Ð !Ð !Ø GÐ GÐ GÐ GÐ GÐ GÐ GÐ GØ 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø *Ð *Ð *Ð *Ð *Ð *Ø @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à $Ð&€ð
 C€ð #%°2¸RÐ@Ð@€ð GØDØHØUØLØHØTØ!Øð
!ð 
!€�Ñ ð GØDØ1Ø>ØLØLØTØØð
!ð 
!€�Ñ ð ð Jð J€Cð3ð Jð JÑ.Ð˜ð ˆØÔ/°Ô@ˆ
Ø�)ÒÐ ¨:Ð 5Ð 5ð  ˆGØ6@ÀÔ6IˆÐ-Ô.¨sÑ3Ð3ðJð  ð /ð /€HØ% hÔ/×5Ò5Ñ7Ô7ð 
/ð 
/‰
ˆˆUà�”�| Y°Ñ6Ô6ˆØ—’Ð/°Ñ9Ô9ˆØ—’Ð6Ð8KÑLÔLˆØ�)ÒÐØ�]Ñ"ˆEØÔ˜vÒ%Ð%¨#°Ò*:Ð*:à—M’M '¨?Ñ;Ô;ˆEØ).ˆ˜Ô! #Ñ&Ð&ð
/ð ð 
àØØIØ>Øð"
ð "
€O�IÑð ØàKØ"Øð$
ð $
€O�KÑ ðh	ð h	ð h	ð h	ð h	ˆgñ h	ô h	ð h	ð h	ð h	rO   