f 2 ddlZddlZddlZddlZddlmZddlmZmZddl m Z GddZ dZ ej fdZd Zd d ZdS) N convert_path)DistutilsTemplateErrorDistutilsInternalError)logcneZdZ ddZdZejfdZdZdZ dZ dZ d Z d Z d ZddZ ddZdS)FileListNc"d|_g|_dSN)allfilesfiles)selfwarn debug_prints 9/opt/alt/python311/lib64/python3.11/distutils/filelist.py__init__zFileList.__init__s  c||_dSr )r )rr s r set_allfileszFileList.set_allfiles#s   rc.t||_dSr )findallr )rdirs rrzFileList.findall&s  rc: ddlm}|rt|dSdS)Nr)DEBUG)distutils.debugrprint)rmsgrs rrzFileList.debug_print)s<  *)))))   #JJJJJ  rc:|j|dSr )r append)ritems rrzFileList.append3s $rc:|j|dSr )r extend)ritemss rr"zFileList.extend6s %     rctttjj|j}g|_|D]-}|jtjj|.dSr )sortedmapospathsplitr rjoin)rsortable_files sort_tuples rsortz FileList.sort9saBGM4: > >?? ( 9 9J J  bglJ7 8 8 8 8 9 9rctt|jdz ddD])}|j||j|dz kr|j|=*dS)Nr)rangelenr )ris rremove_duplicateszFileList.remove_duplicatesCsZs4:*Ar22 " "Az!} 1q5 111JqM " "rc|}|d}dx}x}}|dvr:t|dkrtd|zd|ddD}n|dvrOt|dkrtd |zt|d}d |ddD}nQ|d vr;t|dkrtd |zt|d}ntd |z||||fS)Nr)includeexcludeglobal-includeglobal-excludez&'%s' expects ...c,g|]}t|Sr.0ws r z1FileList._parse_template_line..W;;;A Q;;;rr/)recursive-includerecursive-excludez,'%s' expects ...c,g|]}t|Sr<rr=s rr@z1FileList._parse_template_line..]rAr)graftprunez#'%s' expects a single zunknown action '%s')r)r2rr)rlinewordsactionpatternsr dir_patterns r_parse_template_linezFileList._parse_template_lineLsV q'+++3 : : :5zzA~~,>GIII;;qrr;;;HH A A A5zzA~~,DvMOOOuQx((C;;qrr;;;HH ) ) )5zzQ,;fDFFF&uQx00KK()>)GHH H#{33rcR||\}}}}|dkr^|dd|z|D].}||dst jd|/dS|dkr^|dd|z|D].}||dst jd |/dS|d kr^|d d|z|D].}||d st jd |/dS|dkr^|dd|z|D].}||d st jd|/dS|dkrb|d|dd||D]/}|||st jd||0dS|dkrb|d|dd||D]/}|||st jd||0dS|dkrH|d|z|d|st jd|dSdS|dkrH|d|z|d|st jd|dSdStd|z)Nr6zinclude  r/)anchorz%warning: no files found matching '%s'r7zexclude z9warning: no previously-included files found matching '%s'r8zglobal-include rz>warning: no files found matching '%s' anywhere in distributionr9zglobal-exclude zRwarning: no previously-included files matching '%s' found anywhere in distributionrBzrecursive-include )prefixz:warning: no files found matching '%s' under directory '%s'rCzrecursive-exclude zNwarning: no previously-included files matching '%s' found under directory '%s'rFzgraft z+warning: no directories found matching '%s'rGzprune z6no previously-included directories found matching '%s'z'this cannot happen: invalid action '%s')rMrr*include_patternrrexclude_patternr)rrHrJrKrrLpatterns rprocess_template_linezFileList.process_template_linehsi 04/H/H/N/N,3 Y     Z#((8*<*<< = = =# & &++GA+>>&HD$&&& & & y   Z#((8*<*<< = = =# ? ?++GA+>>?H46=??? ? ? ' ' '   .(1C1CC D D D# D D++GA+>>DH9;BDDD D D ' ' '   .(1C1CC D D D# & &++GA+>>&HD$&&& & & * * *    !cc388H#5#5#57 8 8 8# + +++GC+@@+H7$c+++ + + * * *    !cc388H#5#5#57 8 8 8# + +++GC+@@+H@$c+++ + + w     X 3 4 4 4''['AA &F$&&&&& & &w     X 3 4 4 4''['AA 9*,799999 9 9);fDFF Frr/rcF d}t||||}|d|jz|j||jD]K}||r4|d|z|j|d}L|S)NFz%include_pattern: applying regex r'%s'z adding T)translate_patternrrTr rsearchr r)rrTrPrQis_regex files_found pattern_renames rrRzFileList.include_patterns 2 &wII  @#+, - - - = LLNNNM # #D  && #  d!2333 !!$'''" rcV d}t||||}|d|jztt |jdz ddD]O}||j|r-|d|j|z|j|=d}P|S)NFz%exclude_pattern: applying regex r'%s'r/r0z removing T)rWrrTr1r2r rX)rrTrPrQrYrZr[r3s rrSzFileList.exclude_patterns  &wII  @#+, - - -s4:q("b11 # #A  A// #   1 !=>>>JqM" r)NNr/Nr)__name__ __module__ __qualname__rrr'curdirrrrr"r-r4rMrUrRrSr<rrr r s  !!!)%%%%   !!!999"""4448GFGFGFX((((X:;rr c dtj|dD}ttjj|S)Nc3hK|]-\}}}|D]$}tj||V%.dSr )r'r(r*)r>basedirsr files r z#_find_all_simple..sc D$   T4  rT) followlinks)r'walkfilterr(isfile)r(resultss r_find_all_simplernsJ!#4!@!@!@G "'.' * **rc t|}|tjkr5tjtjj|}t||}t|S)N)start) rnr'rb functoolspartialr(relpathr&list)rr make_rels rrrsW S ! !E bi$RW_C@@@He$$ ;;rc tj|}tj}tjdkrd}d|z}t jd||}|S)N\z\\\\z\1[^%s]z((?>CE C OOc#hh,F FG */%%CCCSSQ  F&+eeZE -D-DEJ :j ! !!rr^)r'r{rxrqdistutils.utilrdistutils.errorsrr distutilsrr rnrbrr~rWr<rrrs  ''''''KKKKKKKKbbbbbbbbP + + +    .""""""""""""r