U e5dœQã@sddlZddlZddlZddlZddlZddlmZddlm Z ddl m Z ddl m Z ddlmZdd„Zd d „Zd d „Zd d„Zdadd„Zdd„Zd)dd„Zdaaadd„Zdd„Zd*dd„Zdd„Zd+dd „Zd!d"„Zd,d#d$„Z d-d%d&„Z!Gd'd(„d(ƒZ"dS).éN)ÚDistutilsPlatformError)Únewer)Úspawn)Úlog)ÚDistutilsByteCompileErrorc CsÖtjdkrFdtj ¡krdSdtj ¡kr.dSdtj ¡kr@dStjSdtjkrZtjdStjd ksnttd ƒsttjSt ¡\}}}}}| ¡  d d ¡}|  d d¡}|  d d¡}|dd…dkrÊd||fS|dd…dk�r,|ddk�rÈd}dt |dƒd|dd…f}dddœ}|d|tj 7}nœ|dd…dk�rLd|||fS|dd …d!k�rŠd!}t   d"t j¡}| |¡}|�rÈ| ¡}n>|dd …d#k�rÈddl}ddl} | | j ¡|||¡\}}}d$|||fS)%NÚntZamd64ú win-amd64z(arm)ú win-arm32z(arm64)z win-arm64Z_PYTHON_HOST_PLATFORMÚposixÚunameú/Úú Ú_ú-éZlinuxz%s-%sZsunosrÚ5Zsolarisz%d.%sééZ32bitZ64bit)iÿÿÿlÿÿÿÿz.%sZaixz%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_supportZdistutils.sysconfigZget_platform_osxZ sysconfigZget_config_vars) ZosnameZhostÚreleaserÚmachineZbitnessZrel_reÚmr(Ú distutils©r-ú&/usr/lib64/python3.8/distutils/util.pyÚget_host_platformsR          þ r/cCs8tjdkr.ddddœ}| tj d¡¡p,tƒStƒSdS)NrZwin32rr )Zx86Zx64ZarmZVSCMD_ARG_TGT_ARCH)rrÚgetrr/)ZTARGET_TO_PLATr-r-r.Ú get_platformas ýr1cCsztjdkr|S|s|S|ddkr.td|ƒ‚|ddkrFtd|ƒ‚| d¡}d|krd| d¡qP|sntjStjj|ŽS)Nr rzpath '%s' cannot be absoluteéÿÿÿÿzpath '%s' cannot end with '/'Ú.)rÚsepÚ ValueErrorÚsplitÚremoveÚcurdirÚpathÚjoin)ÚpathnameÚpathsr-r-r.Ú convert_pathls       r=cCsŽtjdkr) Ú_environ_checkedrrrÚpwdÚgetpwuidÚgetuidÚ ImportErrorÚKeyErrorr1)rEr-r-r.Ú check_environŸs   rJc CsVtƒ|fdd„}zt d||¡WStk rP}ztd|ƒ‚W5d}~XYnXdS)NcSs,| d¡}||krt||ƒStj|SdS)Nr>)r'Ústrrr)r&Ú local_varsZvar_namer-r-r.Ú_substÄs  zsubst_vars.._substz\$([a-zA-Z_][a-zA-Z_0-9]*)zinvalid variable '$%s')rJr#ÚsubrIr5)ÚsrLrMÚvarr-r-r.Ú subst_varsºs  rQúerror: cCs |t|ƒS©N)rK)ÚexcÚprefixr-r-r.Úgrok_environment_errorÓsrVcCs(t dtj¡at d¡at d¡adS)Nz [^\\\'\"%s ]*z'(?:[^'\\]|\\.)*'z"(?:[^"\\]|\\.)*")r#r$ÚstringÚ whitespaceÚ _wordchars_reÚ _squote_reÚ _dquote_rer-r-r-r.Ú _init_regexÜs r\cCs„tdkrtƒ| ¡}g}d}|�r€t ||¡}| ¡}|t|ƒkrZ| |d|…¡�q€||tjkr�| |d|…¡||d…  ¡}d}nÔ||dkrÂ|d|…||dd…}|d}n¢||dkrÜt  ||¡}n*||dkröt  ||¡}nt d||ƒ‚|dk�r t d||ƒ‚| ¡\}}|d|…||d|d…||d…}| ¡d}|t|ƒkr| |¡�q€q|S) Nrr?r>ú'ú"z!this can't happen (bad char '%c')z"bad string (mismatched %s quotes?)r)rYr\Ústripr&ÚendÚlenÚappendrWrXÚlstriprZr[Ú RuntimeErrorr5Úspan)rOZwordsÚposr+r`Zbegr-r-r.Ú split_quotedâs@        ,   rgcCsP|dkr6d|j|f}|dd…dkr6|dd…d}t |¡|sL||ŽdS)Nz%s%réþÿÿÿz,)rú))Ú__name__rÚinfo)ÚfuncÚargsÚmsgÚverboseÚdry_runr-r-r.Úexecutes  rqcCs2| ¡}|dkrdS|dkr dStd|fƒ‚dS)N)ÚyZyesÚtÚtrueZonÚ1r>)ÚnZnoÚfZfalseZoffÚ0rzinvalid truth value %r)rr5)Úvalr-r-r.Ú strtobool2s rzr>c CsTddl}tjrtdƒ‚|dkr*do(|dk}|�s@zddlm} | dƒ\} } Wn.tk rzddlm} d| dƒ} } YnXt  d| ¡|sø| dk r¢t   | d¡} n t | dƒ} | �B|   d ¡|   d  tt|ƒ¡d ¡|   d |||||f¡W5QRXtjg}| | ¡¡| | ¡t||d �tt j| fd| |d ��nddlm}|D]þ}|dd…dk�rj�qP|dk�r˜|dk�r‚dn|}tjj||d�}n tj |¡}|}|�rä|dt|ƒ…|k�rÔtd||fƒ‚|t|ƒd…}|�røt j ||¡}t j  |¡}|�rP|�st!||ƒ�r>t  d||¡|�sL||||ƒnt "d||¡�qPdS)Nrzbyte-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) )rpz removing %s)r$éýÿÿÿr )Ú optimizationz1invalid prefix: filename %r doesn't start with %rzbyte-compiling %s to %sz%skipping byte-compilation of %s to %s)#Ú subprocessrÚdont_write_bytecoderZtempfiler{rHr}rrkrÚfdopenÚopenÚwriter:ÚmapÚreprÚ executableÚextendZ"_optim_args_from_interpreter_flagsrbrrqr7Ú py_compiler$Ú importlibÚutilÚcache_from_sourcerar5r9ÚbasenamerÚdebug)Zpy_filesÚoptimizeZforcerUZbase_dirrorpZdirectr�r{Z script_fdZ script_namer}ZscriptÚcmdr$ÚfileÚoptÚcfileÚdfileZ cfile_baser-r-r.Ú byte_compileBsx$        û  ÿ   ÿ ÿ ÿr–cCs| d¡}d}| |¡S)NÚ z )r6r:)ÚheaderÚlinesr4r-r-r.Ú rfc822_escape×s ršcCsV|sdSddlm}m}Gdd„d|ƒ}|dkr8|dƒ}|||d�}|j|dd�dS) Nr)ÚRefactoringToolÚget_fixers_from_packagec@s$eZdZdd„Zdd„Zdd„ZdS)z*run_2to3..DistutilsRefactoringToolc_stj|f|žŽdSrS)rÚerror)ÚselfrnrmÚkwr-r-r.Ú log_errorîsz4run_2to3..DistutilsRefactoringTool.log_errorcWstj|f|žŽdSrS)rrk©ržrnrmr-r-r.Ú log_messageñsz6run_2to3..DistutilsRefactoringTool.log_messagecWstj|f|žŽdSrS)rr�r¡r-r-r.Ú log_debugôsz4run_2to3..DistutilsRefactoringTool.log_debugN)rjÚ __module__Ú __qualname__r r¢r£r-r-r-r.ÚDistutilsRefactoringToolísr¦z lib2to3.fixes)ÚoptionsT)r…)Zlib2to3.refactorr›rœZrefactor)ÚfilesÚ fixer_namesr§Úexplicitr›rœr¦Úrr-r-r.Úrun_2to3ás  r¬c Csddlm}ddlm}ddlm}|ƒ} t ¡} t |¡z |   ¡W5t | ¡X| j | j dd…<|r�|  ¡D]} |   ¡} | s„qr|  | ¡qrg} | j D]L} tj || ¡}|tj |¡ƒ|tj || ¡|dd�}|drš|  |¡qštdd„| Dƒ|||d �| S) Nr)Úmkpath)Ú copy_file)ÚFileListr>)ÚupdatecSsg|]}| ¡ d¡r|‘qS)r|)rÚendswith)Ú.0Úfnr-r-r.Ú sz$copydir_run_2to3..)r©r§rª)Zdistutils.dir_utilr­Zdistutils.file_utilr®Zdistutils.filelistr¯rÚgetcwdÚchdirÚfindallZallfilesr¨Ú splitlinesr_Zprocess_template_liner9r:Údirnamerbr¬)ÚsrcÚdestÚtemplater©r§rªr­r®r¯Zfilelistr8ÚlineZcopiedÚfilenameZoutnameÚresr-r-r.Úcopydir_run_2to3üs:          ÿrÀc@s eZdZdZdZdZdd„ZdS)Ú Mixin2to3NcCst||j|j|jƒSrS)r¬r©r§rª)ržr¨r-r-r.r¬-szMixin2to3.run_2to3)rjr¤r¥r©r§rªr¬r-r-r-r.rÁsrÁ)rR)Nrr)rrNNr>rN)NNN)NNNN)#rr#Úimportlib.utilr‹rWrZdistutils.errorsrZdistutils.dep_utilrZdistutils.spawnrr,rrr/r1r=rBrDrJrQrVrYrZr[r\rgrqrzr–ršr¬rÀrÁr-r-r-r.ÚsL     O   = ü  ÿ !