
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
U
    ¡ê,aœQ  ã                   @   s  d dl 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 d dlmZ dd„ Zd	d
„ Zdd„ Zdd„ Zd add„ Zdd„ Zd)dd„Zd a aadd„ Zdd„ Zd*dd„Zdd„ Zd+dd „Zd!d"„ Zd,d#d$„Z d-d%d&„Z!G d'd(„ d(ƒZ"dS ).é    N)ÚDistutilsPlatformError)Únewer)Úspawn)Úlog)ÚDistutilsByteCompileErrorc            
      C   sÖ  t jdkrFdtj ¡ krdS dtj ¡ kr.dS dtj ¡ kr@dS tjS dt jkrZt jd S t jd	ksntt d
ƒsttjS t  ¡ \} }}}}|  ¡  	dd¡} | 	dd¡}| 	dd¡}| d d… dkrÊd| |f S | d d… dk�r,|d dk�rÈd} dt
|d ƒd |dd … f }dddœ}|d|tj  7 }nœ| d d… dk�rLd| ||f S | d d … d!k�rŠd!} t d"tj¡}| |¡}|�rÈ| ¡ }n>| d d … d#k�rÈdd l}dd l}	| |	j ¡ | ||¡\} }}d$| ||f S )%NÚntZamd64ú	win-amd64z(arm)ú	win-arm32z(arm64)z	win-arm64Z_PYTHON_HOST_PLATFORMÚposixÚunameú/Ú ú Ú_ú-é   Zlinuxz%s-%sZsunosr   Ú5Zsolarisz%d.%sé   é   Z32bitZ64bit)iÿÿÿl   ÿÿÿÿ z.%sZaixz%s-%s.%sé   Úcygwinz[\d.]+Údarwinz%s-%s-%s)ÚosÚnameÚsysÚversionÚlowerÚplatformÚenvironÚhasattrr   ÚreplaceÚintÚmaxsizeÚreÚcompileÚASCIIÚmatchÚgroupÚ_osx_supportZdistutils.sysconfigZget_platform_osxZ	sysconfigZget_config_vars)
ZosnameZhostÚreleaser   ÚmachineZbitnessZrel_reÚmr(   Ú	distutils© r-   ú3/opt/alt/python38/lib64/python3.8/distutils/util.pyÚget_host_platform   sR    


 


  þ
r/   c                  C   s8   t jdkr.ddddœ} |  t j d¡¡p,tƒ S tƒ S d S )Nr   Zwin32r   r	   )Zx86Zx64ZarmZVSCMD_ARG_TGT_ARCH)r   r   Úgetr   r/   )ZTARGET_TO_PLATr-   r-   r.   Úget_platforma   s    
ýr1   c                 C   sz   t jdkr| S | s| S | d dkr.td|  ƒ‚| d dkrFtd|  ƒ‚|  d¡}d|krd| d¡ qP|snt jS t jj|Ž S )Nr   r   zpath '%s' cannot be absoluteéÿÿÿÿzpath '%s' cannot end with '/'Ú.)r   ÚsepÚ
ValueErrorÚsplitÚremoveÚcurdirÚpathÚjoin)ÚpathnameÚpathsr-   r-   r.   Úconvert_pathl   s    	

r=   c                 C   sŽ   t jdkr<t j |¡s$t j | |¡S t j | |dd … ¡S nNt jdkr|t j |¡\}}|d dkrn|dd … }t j | |¡S tdt j ƒ‚d S )Nr
   é   r   r   ú\z!nothing known about platform '%s')r   r   r9   Úisabsr:   Ú
splitdriver   )Znew_rootr;   Zdriver9   r-   r-   r.   Úchange_rootˆ   s    

rB   c               	   C   sx   t rd S tjdkrZdtjkrZz$dd l} |  t ¡ ¡d tjd< W n ttfk
rX   Y nX dtjkrpt	ƒ tjd< da d S )Nr
   ÚHOMEr   r   ZPLATr>   )
Ú_environ_checkedr   r   r   ÚpwdÚgetpwuidÚgetuidÚImportErrorÚKeyErrorr1   )rE   r-   r-   r.   Úcheck_environŸ   s    	
rJ   c              
   C   sV   t ƒ  |fdd„}zt d|| ¡W S  tk
rP } ztd| ƒ‚W 5 d }~X Y nX d S )Nc                 S   s,   |   d¡}||krt|| ƒS tj| S d S )Nr>   )r'   Ústrr   r   )r&   Ú
local_varsZvar_namer-   r-   r.   Ú_substÄ   s    
zsubst_vars.<locals>._substz\$([a-zA-Z_][a-zA-Z_0-9]*)zinvalid variable '$%s')rJ   r#   ÚsubrI   r5   )ÚsrL   rM   Úvarr-   r-   r.   Ú
subst_varsº   s    	rQ   úerror: c                 C   s   |t | ƒ S ©N)rK   )ÚexcÚprefixr-   r-   r.   Úgrok_environment_errorÓ   s    rV   c                   C   s(   t  dtj ¡at  d¡at  d¡ad S )Nz[^\\\'\"%s ]*z'(?:[^'\\]|\\.)*'z"(?:[^"\\]|\\.)*")r#   r$   ÚstringÚ
whitespaceÚ_wordchars_reÚ
_squote_reÚ
_dquote_rer-   r-   r-   r.   Ú_init_regexÜ   s    
r\   c                 C   s„  t d krtƒ  |  ¡ } g }d}| �r€t  | |¡}| ¡ }|t| ƒkrZ| | d |… ¡ �q€| | tjkr�| | d |… ¡ | |d …  	¡ } d}nÔ| | dkrÂ| d |… | |d d …  } |d }n¢| | dkrÜt
 | |¡}n*| | dkröt | |¡}ntd| |  ƒ‚|d k�r td| |  ƒ‚| ¡ \}}| d |… | |d |d …  | |d …  } | ¡ d }|t| ƒkr| | ¡ �q€q|S )	Nr   r?   r>   ú'ú"z!this can't happen (bad char '%c')z"bad string (mismatched %s quotes?)r   )rY   r\   Ústripr&   ÚendÚlenÚappendrW   rX   ÚlstriprZ   r[   ÚRuntimeErrorr5   Úspan)rO   ZwordsÚposr+   r`   Zbegr-   r-   r.   Úsplit_quotedâ   s@     

,
rg   c                 C   sP   |d kr6d| j |f }|dd … dkr6|dd… d }t |¡ |sL| |Ž  d S )Nz%s%réþÿÿÿz,)r   ú))Ú__name__r   Úinfo)ÚfuncÚargsÚmsgÚverboseÚdry_runr-   r-   r.   Úexecute  s    	
rq   c                 C   s2   |   ¡ } | dkrdS | dkr dS td| f ƒ‚d S )N)ÚyZyesÚtÚtrueZonÚ1r>   )ÚnZnoÚfZfalseZoffÚ0r   zinvalid truth value %r)r   r5   )Úvalr-   r-   r.   Ú	strtobool2  s    rz   r>   c              	   C   sT  dd l }tjrtdƒ‚|d kr*do(|dk}|�s@zddlm}	 |	dƒ\}
}W n. tk
rz   ddlm} d |dƒ }
}Y nX t 	d|¡ |sø|
d k	r¢t
 |
d¡}n
t|dƒ}|�B | d	¡ | d
 tt| ƒ¡d ¡ | d|||||f ¡ W 5 Q R X tjg}| | ¡ ¡ | |¡ t||d� tt
j|fd| |d� �nddlm} | D ]þ}|dd … dk�rj�qP|dk�r˜|dk�r‚dn|}tjj||d�}ntj |¡}|}|�rä|d t|ƒ… |k�rÔtd||f ƒ‚|t|ƒd … }|�røt
j ||¡}t
j  |¡}|�rP|�st!||ƒ�r>t 	d||¡ |�sL||||ƒ nt "d||¡ �qPd S )Nr   zbyte-compiling is disabled.F)Úmkstempú.py)Úmktempz$writing byte-compilation script '%s'Úwz2from distutils.util import byte_compile
files = [
z,
z]
zŒ
byte_compile(files, optimize=%r, force=%r,
             prefix=%r, base_dir=%r,
             verbose=%r, dry_run=0,
             direct=1)
)rp   zremoving %s)r$   éýÿÿÿr   )Úoptimizationz1invalid prefix: filename %r doesn't start with %rzbyte-compiling %s to %sz%skipping byte-compilation of %s to %s)#Ú
subprocessr   Údont_write_bytecoder   Ztempfiler{   rH   r}   r   rk   r   ÚfdopenÚopenÚwriter:   ÚmapÚreprÚ
executableÚextendZ"_optim_args_from_interpreter_flagsrb   r   rq   r7   Ú
py_compiler$   Ú	importlibÚutilÚcache_from_sourcera   r5   r9   Úbasenamer   Údebug)Zpy_filesÚoptimizeZforcerU   Zbase_dirro   rp   Zdirectr�   r{   Z	script_fdZscript_namer}   ZscriptÚcmdr$   ÚfileÚoptÚcfileÚdfileZ
cfile_baser-   r-   r.   Úbyte_compileB  sx    $

û
ÿ

 ÿÿ ÿr–   c                 C   s   |   d¡}d}| |¡S )NÚ
z	
        )r6   r:   )ÚheaderÚlinesr4   r-   r-   r.   Úrfc822_escape×  s    
rš   c                 C   sV   | sd S ddl m}m} G dd„ d|ƒ}|d kr8|dƒ}|||d�}|j| dd� d S )	Nr   )ÚRefactoringToolÚget_fixers_from_packagec                   @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )z*run_2to3.<locals>.DistutilsRefactoringToolc                 _   s   t j|f|žŽ  d S rS   )r   Úerror)Úselfrn   rm   Úkwr-   r-   r.   Ú	log_errorî  s    z4run_2to3.<locals>.DistutilsRefactoringTool.log_errorc                 W   s   t j|f|žŽ  d S rS   )r   rk   ©rž   rn   rm   r-   r-   r.   Úlog_messageñ  s    z6run_2to3.<locals>.DistutilsRefactoringTool.log_messagec                 W   s   t j|f|žŽ  d S rS   )r   r�   r¡   r-   r-   r.   Ú	log_debugô  s    z4run_2to3.<locals>.DistutilsRefactoringTool.log_debugN)rj   Ú
__module__Ú__qualname__r    r¢   r£   r-   r-   r-   r.   ÚDistutilsRefactoringToolí  s   r¦   zlib2to3.fixes)ÚoptionsT)r…   )Zlib2to3.refactorr›   rœ   Zrefactor)ÚfilesÚfixer_namesr§   Úexplicitr›   rœ   r¦   Úrr-   r-   r.   Úrun_2to3á  s    
r¬   c              	   C   s  ddl m} ddlm} ddlm} |ƒ }	t ¡ }
t | ¡ z|	 	¡  W 5 t |
¡ X |	j
|	jd d …< |r�| ¡ D ]}| ¡ }|s„qr|	 |¡ qrg }|	jD ]L}tj ||¡}|tj |¡ƒ |tj | |¡|dd�}|d rš| |¡ qštdd„ |D ƒ|||d	� |S )
Nr   )Úmkpath)Ú	copy_file)ÚFileListr>   )Úupdatec                 S   s   g | ]}|  ¡  d ¡r|‘qS )r|   )r   Úendswith)Ú.0Úfnr-   r-   r.   Ú
<listcomp>  s      z$copydir_run_2to3.<locals>.<listcomp>)r©   r§   rª   )Zdistutils.dir_utilr­   Zdistutils.file_utilr®   Zdistutils.filelistr¯   r   ÚgetcwdÚchdirÚfindallZallfilesr¨   Ú
splitlinesr_   Zprocess_template_liner9   r:   Údirnamerb   r¬   )ÚsrcÚdestÚtemplater©   r§   rª   r­   r®   r¯   Zfilelistr8   ÚlineZcopiedÚfilenameZoutnameÚresr-   r-   r.   Úcopydir_run_2to3ü  s:    
 
   ÿrÀ   c                   @   s    e Zd ZdZdZdZdd„ ZdS )Ú	Mixin2to3Nc                 C   s   t || j| j| jƒS rS   )r¬   r©   r§   rª   )rž   r¨   r-   r-   r.   r¬   -  s    zMixin2to3.run_2to3)rj   r¤   r¥   r©   r§   rª   r¬   r-   r-   r-   r.   rÁ     s   rÁ   )rR   )Nr   r   )r   r   NNr>   r   N)NNN)NNNN)#r   r#   Úimportlib.utilr‹   rW   r   Zdistutils.errorsr   Zdistutils.dep_utilr   Zdistutils.spawnr   r,   r   r   r/   r1   r=   rB   rD   rJ   rQ   rV   rY   rZ   r[   r\   rg   rq   rz   r–   rš   r¬   rÀ   rÁ   r-   r-   r-   r.   Ú<module>   sL   O
=
          ü
 

    ÿ
!