fFn ddlZddlZddlZddlmZddlmZmZmZm Z m Z ddlm Z GddZ dS)N)DistutilsOptionError)utildir_util file_util archive_utildep_utillogceZdZ gZdZdZdZdZdZd$dZ d Z d%d Z d Z d&d Z d&dZdZ d&dZdZdZdZdZd%dZd'dZdZdZdZd(dZd)dZ d*dZ d+dZd%d Zd,d!Z d-d"Z d.d#Z!dS)/Commandc ddlm}t||std|jt urt d||_|d|_ |j |_ d|_ d|_ d|_ dS)Nr) Distributionz$dist must be a Distribution instancezCommand is an abstract class)distutils.distr isinstance TypeError __class__r RuntimeError distributioninitialize_options_dry_runverboseforcehelp finalized)selfdistrs 4/opt/alt/python311/lib64/python3.11/distutils/cmd.py__init__zCommand.__init__/s 0/////$ -- DBCC C >W $ $=>> >  !!! |   c|dkr,t|d|z}|t|j|S|St|)Ndry_run_)getattrrAttributeError)rattrmyvals r __getattr__zCommand.__getattr___sK 9  D#*--E}t0$777  && &rcJ|js|d|_dSN)rfinalize_optionsrs rensure_finalizedzCommand.ensure_finalizedis)~ $  ! ! # # #rc2 td|jzNz,abstract method -- subclass %s must overriderrr,s rrzCommand.initialize_options{( I!^,-- -rc2 td|jzr/r0r,s rr+zCommand.finalize_optionss( I!^,-- -rNczddlm}|d|z}|||ztj|dz}|jD]j\}}}||}|ddkr |dd}t||}|||d|ztjkdS) Nr) longopt_xlatezcommand options for '%s':)levelz =z = ) distutils.fancy_getoptr5get_command_nameannouncer INFO user_options translater#)rheaderindentr5optionr"values r dump_optionszCommand.dump_optionss888888 >043H3H3J3JJF fvoSX 666$"/ * *NVQ%%m44FbzS  D&))E MM&#>> #  * * * *  * *rc2 td|jzr/r0r,s rrunz Command.runr1rr*c2 tj||dSNr )rmsgr6s rr;zCommand.announces!  srcv ddlm}|r/t|tjdSdS)Nr)DEBUG)distutils.debugrJprintsysstdoutflush)rrHrJs r debug_printzCommand.debug_printsR  *)))))   #JJJ J         rc t||}|t||||St|tst d|d|d|d|S)N'z ' must be a z (got `z`))r#setattrrstrr)rrAwhatdefaultvals r_ensure_stringlikezCommand._ensure_stringlikesqdF## ; D&' * * *NC%% >&&*0&&$$$(=>> > rc6 ||d|dS)Nstring)rX)rrArVs r ensure_stringzCommand.ensure_strings'  ':::::rc8 t||}|dSt|tr&t||t jd|dSt|t rtd|D}nd}|std|d|ddS)Nz,\s*|\s+c3@K|]}t|tVdSrG)rrT).0vs r z-Command.ensure_string_list..s,99As++999999rFrRz!' must be a list of strings (got )) r#rrTrSresplitlistallr)rrArWoks rensure_string_listzCommand.ensure_string_lists dF## ; F S ! ! ' D&"(;"<"< = = = = =#t$$ 99S99999 '**&''' ' 'rc||||}|"||std|z||fzdSdS)Nzerror in '%s' option: )rXr)rrAtesterrU error_fmtrVrWs r_ensure_tested_stringzCommand._ensure_tested_strings[%%fdG<< ?66#;;?&(@9(L*0#(788 8 ???rcV ||tjjdddS)Nfilenamez$'%s' does not exist or is not a file)rkospathisfilerrAs rensure_filenamezCommand.ensure_filenames:C ""627>#-#I K K K K KrcT||tjjdddS)Nzdirectory namez)'%s' does not exist or is not a directory)rkrnroisdirrqs rensure_dirnamezCommand.ensure_dirnames7 ""627=#3#N P P P P PrcHt|dr|jS|jjS)N command_name)hasattrrwr__name__r,s rr:zCommand.get_command_name s( 4 ( ( +$ $>* *rc  |j|}||D]4\}}t||t ||t||5dSrG)rget_command_objr-r#rS)rsrc_cmd option_pairs src_cmd_obj src_option dst_options rset_undefined_optionszCommand.set_undefined_optionss '77@@ $$&&&(4 L L $ZtZ((0j'+z*J*JKKK L Lrcf |j||}||SrG)rr{r-)rcommandcreatecmd_objs rget_finalized_commandzCommand.get_finalized_command$s8 #33GVDD  """rrc8|j||SrG)rreinitialize_command)rrreinit_subcommandss rrzCommand.reinitialize_command0s% 55g6HJJ Jrc< |j|dSrG)r run_command)rrs rrzCommand.run_command4s&  %%g.....rcj g}|jD]'\}}| ||r||(|SrG) sub_commandsappend)rcommandscmd_namemethods rget_sub_commandszCommand.get_sub_commands;sN "&"3 * * Xv~~)))rcVtjd||dS)Nzwarning: %s: %s )r warnr:)rrHs rrz Command.warnKs) $d&;&;&=&=sCCCCCrc@tj||||jdSNr!)rexecuter!)rfuncargsrHr6s rrzCommand.executeNs# T4dl;;;;;;rc>tj|||jdSr)rmkpathr!)rnamemodes rrzCommand.mkpathQs!dDL999999rc P tj|||||j ||jSr)r copy_filerr!)rinfileoutfile preserve_modepreserve_timeslinkr6s rrzCommand.copy_fileTs: L"67M#1tz>4+/<999 9rc P tj||||||j |jSr)r copy_treerr!)rrrrrpreserve_symlinksr6s rrzCommand.copy_tree]s> !&'="02C&*j.$,HHH Hrc< tj|||jSr)r move_filer!)rsrcdstr6s rrzCommand.move_filefs2"3T\BBBBrc: ddlm}||||jdS)Nr)spawnr)distutils.spawnrr!)rcmd search_pathr6rs rrz Command.spawnjs6@)))))) c; 555555rc Btj|||||j||S)N)r!ownergroup)r make_archiver!)r base_nameformatroot_dirbase_dirrrs rrzCommand.make_archiveos2(FHh15/4ECCC Crcl |d|z}t|tr|f}n+t|ttfst d|d|dd|}|jstj||r| ||||dStj |dS)Nzskipping %s (inputs unchanged)z9'infiles' must be a string, or a list or tuple of stringsz generating z from z, ) rrTrdtuplerjoinrr newer_grouprr debug)rinfilesrrrexec_msgskip_msgr6s r make_filezCommand.make_fileus   7'AH gs # # OjGGGdE]33 OMOO O   29''499W;M;M;MNH : -gw?? LLtXu 5 5 5 5 5 Ih     r)Nr3)r*rG)rr))r)r*r*Nr*)r*r*rr*)r*r*)NNNN)NNr*)"ry __module__ __qualname__rrr'r-rr+rCrEr;rPrXr[rgrkrrrur:rrrrrrrrrrrrrrrrr r sr :L ---`'''$ - - - - - - * * * * - - - .;;;; ''','+8888KKK PPP+++ LLL*JJJJ///    DDD<<<<::::JK#$9999JK./HHHHCCCC6666 GK'+CCCC78      rr ) rMrnrbdistutils.errorsr distutilsrrrrrr r rrrrs 111111GGGGGGGGGGGGGGG G G G G G G G G G r