fbh ddlZddlZddlmZmZddlmZiad dZd dZ d dZ d Z dd Z d Z dS)N)DistutilsFileErrorDistutilsInternalError)logc  t|tstd|dtj|}g}tj|s|dkr|Sttj |r|Stj |\}}|g}|r||rztj|s[tj |\}}| d||r!|rtj|[|D]}tj ||}tj |} t| r]|dkrtjd||s tj||nk#t $r^} | jt"jkrtj|s t'd|d| jd Yd} ~ nd} ~ wwxYw||dt| <|S) Nz%mkpath: 'name' must be a string (got )rrz creating %szcould not create '': ) isinstancestrrospathnormpathisdir _path_createdgetabspathsplitinsertjoinrinfomkdirOSErrorerrnoEEXISTrargsappend) namemodeverbosedry_run created_dirsheadtailtailsdabs_headexcs 9/opt/alt/python311/lib64/python3.11/distutils/dir_util.pymkpathr,sv dC D$$<@DDBDD D 7  D ! !DL w}}Tdbjj..//7==&<4 FE 4 d 3 3w}}T** t Q 4 d 3 3$$w||D!$$7??4((   X & &   a<< H]D ) ) ) & Nt$$$$ N N N U\11bgmmD6I6I1,,9=sx||LNNN21111 N    % % %"# h s G!! I +AII c  t}|D]R}|tj|tj|St |D]}t||||dS)Nr"r#)setaddrrrdirnamesortedr,)base_dirfilesr!r"r#need_dirfiledirs r+ create_treer8PsuuHDD RW\\(BGOOD,A,ABBCCCCh<<sD'7;;;;;<<c  ddlm}|s1tj|st d|z tj|} n6#t$r)} |rg} nt d|d| jYd} ~ nd} ~ wwxYw|st||g} | D]I} tj || } tj || }| drY|r|tj | r]tj | }|dkrtjd |||stj||| |tj| r,| t'| ||||||| "|| |||||| | |K| S) Nr) copy_filez&cannot copy tree '%s': not a directoryzerror listing files in 'r )r"z.nfsrzlinking %s -> %sr.)distutils.file_utilr;rrrrlistdirrstrerrorr,r startswithislinkreadlinkrrsymlinkrextend copy_tree)srcdst preserve_modepreserve_timespreserve_symlinksupdater"r#r;nameseoutputsnsrc_namedst_name link_dests r+rDrDcsW&.----- >27==--> 6<>> >I 3 III  IEE$$7:ssAJJGII I EEEEI %sG$$$$G %%7<<Q''7<<Q'' <<      %!9!9 % H--I!||+XyAAA 0 9h/// NN8 $ $ $ $ W]]8 $ $ % NN(Hm(*;V")7<<< = = = = Ih-$fg% ' ' ' ' NN8 $ $ $ $ NsA BA??Bc tj|D]}tj||}tj|r0tj|st ||q|tj|f|tj |fdS)N) rr=rrrr@_build_cmdtuplerremovermdir)r cmdtuplesfreal_fs r+rSrSs# Z  22d1%% 7==  2)?)? 2 FI . . . .   bi0 1 1 1 1 bh%&&&&&r9cj |dkrtjd||rdSg}t|||D]}} |d|dtj|d}|t vrt |=Q#t$r }tjd||Yd}~vd}~wwxYwdS)Nrz'removing '%s' (and everything under it)rzerror removing %s: %s) rrrSrrrrrwarn) directoryr"r#rVcmdrr*s r+ remove_treer]s!|| :IFFFIIy)))>> > CF3q6NNNgooc!f--G-''!'* > > > H,i = = = = = = = = >>>sA B B0B++B0c tj|\}}|ddtjkr ||ddz}|S)Nrr)rr splitdrivesep)rdrives r+ensure_relativerbsN'$$T**KE4 AaCyBFtABBx Kr9)rrr)rrrrrr)rr)rrdistutils.errorsrr distutilsrrr,r8rDrSr]rbr9r+rfsG GGGGGGGG ====~<<<<&9:@ACCCCJ'''>>>>0r9