+
    
ih                        ^ RI Ht ^ RIt^ RIt^ RIHtHt ^RIHt ^RI	H
t
 ^ RIHu Ht  ! R R]P                  4      tR# )    )annotationsN)productstarmap)StrPath)Distributionc                      ] tR t^t$ RtR]R&   R tR tR R ltR t	R	 t
]R
 4       tR t]R 4       tRR R lltR tRtR# )install_libz9Don't add compiled flags to filenames of non-Python filesr   distributionc                	`    \         P                  P                  V 4       R V n        R V n        R # N)origr	   initialize_options	multiarchinstall_layout)selfs   &@/usr/lib/python3/dist-packages/setuptools/command/install_lib.pyr   install_lib.initialize_options   s%    ++D1"    c                	    \         P                  P                  V 4       V P                  R R4       V P                  R8X  d;   \
        P                  R,          R8  d   ^ RIpVP                  R4      V n	        R# R# R# )installdeb:N   NN	MULTIARCH)r   r   )   r   )
r   r	   finalize_optionsset_undefined_optionsr   sysversion_info	sysconfigget_config_varr   )r   r   s   & r   r   install_lib.finalize_options   se    ))$/""9-PQ%'C,<,<R,@F,J&55kBDN -K'r   c                   V ^8  d   QhRR/# )r   returnNone )formats   "r   __annotate__install_lib.__annotate__   s     ( (T (r   c                	t    V P                  4        V P                  4       pVe   V P                  V4       R # R # r   )buildr   byte_compile)r   outfiless   & r   runinstall_lib.run   s/    

<<>h'  r   c                   a  V 3R lS P                  4        4       p\        VS P                  4       4      p\        \	        S P
                  V4      4      # )z
Return a collections.Sized collections.Container of paths to be
excluded for single_version_externally_managed installations.
c              3  X   <"   T F  pSP                  V4       F  pVx  K	  	  K!  	  R # 5ir   )_all_packages).0ns_pkgpkgr   s   &  r   	<genexpr>-install_lib.get_exclusions.<locals>.<genexpr>*   s0      
/))&1 1 /s   '*)_get_SVEM_NSPsr   _gen_exclusion_pathssetr   _exclude_pkg_path)r   all_packages
excl_specss   f  r   get_exclusionsinstall_lib.get_exclusions%   sJ    

--/
 \4+D+D+FG
7411:>??r   c                    VP                  R4      V.,           p\        P                  P                  ! V P                  .VO5!  # )z_
Given a package name and exclusion path within that package,
compute the full exclusion path.
.)splitospathjoininstall_dir)r   r4   exclusion_pathpartss   &&& r   r:   install_lib._exclude_pkg_path3   s7    
 		#.!11ww||D,,5u55r   c              #  R   "   V '       d   V x  V P                  R4      w  rpK"  R# 5i)zV
>>> list(install_lib._all_packages('foo.bar.baz'))
['foo.bar.baz', 'foo.bar', 'foo']
r@   N)
rpartition)pkg_name_sep_childs   &  r   r1   install_lib._all_packages;   s)      N%-%8%8%="HF s   ''c                    V P                   P                  '       g   . # V P                  R4      pVP                  pV'       d   V P                   P                  # . # )zq
Get namespace packages (list) but only for
single_version_externally_managed installations and empty otherwise.
r   )r
   namespace_packagesget_finalized_command!single_version_externally_managed)r   install_cmdsvems   &  r   r7   install_lib._get_SVEM_NSPsE   sO       333I00;<<7;t  33CCr   c               #  ,  "   Rx  Rx  Rx  \        \        R4      '       g   R# \        P                  P	                  RR\        P
                  P                  ,           4      p V R,           x  V R	,           x  V R
,           x  V R,           x  R# 5i)zS
Generate file paths to be excluded for namespace packages (bytecode
cache files).
z__init__.pyz__init__.pycz__init__.pyoimplementationN__pycache__z	__init__.z.pycz.pyoz
.opt-1.pycz
.opt-2.pyc)hasattrr   rB   rC   rD   rW   	cache_tag)bases    r   r8    install_lib._gen_exclusion_pathsU   sy      s,--ww||M;9K9K9U9U+UVVmVm\!!\!!s   BBc               4    V ^8  d   QhRRRRRRRRRRR	R
RR/# )r   infiler   outfilestrpreserve_modeboolpreserve_timespreserve_symlinkslevelobjectr#   z	list[str]r%   )r&   s   "r   r'   r(   j   sP     2 22 2
 2 2  2 2 
2r   c                	(  a aaaaa V'       g   Q hV'       g   Q hV'       d   Q hS P                  4       oS'       g@   ^ RIpS P                  VP                  n        \
        P                  P                  S W4      # ^ RIH	p ^ RI
Ho . oS P                  '       d`   ^ RIp	V	P                  R4      oSP                  S P                  SRR ,           4      '       d   RoMSRR : RS P                  : SRR : 2oR VVVVVV 3R llp
V! WV
4       S# )	r   N)unpack_directory)log
EXT_SUFFIX-c                    V ^8  d   QhRRRR/# )r   srcr`   dstr%   )r&   s   "r   r'   +install_lib.copy_tree.<locals>.__annotate__   s     	 	C 	c 	r   c                  < VS9   d   SP                  R V4       R# SP                  '       dx   S'       dp   VP                  S4      '       dY   VP                  S4      '       gB   VP                  SS4      pSP	                  R\
        P                  P                  V4      4       SP	                  RV \
        P                  P                  V4      4       SP                  V4       V# )z/Skipping installation of %s (namespace package)Fzrenaming extension to %szcopying %s -> %s)
warnr   endswithreplaceinforB   rC   basenamedirnameappend)rm   rn   exclude
ext_suffixri   
new_suffixr,   r   s   &&r   pf!install_lib.copy_tree.<locals>.pf   s    g~JCP~~~*j1I1IRUR^R^_iRjRjkk*j93RWW5E5Ec5JKHH'bggooc.BCOOC Jr   )r=   distutils.dir_utilr   dir_util
_multiarchr   r	   	copy_treesetuptools.archive_utilrh   	distutilsri   r   r    rr   )r   r^   r_   ra   rc   rd   re   r   rh   r   r{   rx   ry   ri   rz   r,   s   f&&&&&&    @@@@@r   r   install_lib.copy_treej   s     }~$$$%%'%,0NNI)##--dFDD 	=! >>>"11<@J""4>>JrsO#CDD!
*4Sb/4>>:VXVY?[
	 	 	"-r   c                	    \         P                  P                  V 4      pV P                  4       pV'       d   V Uu. uF  q3V9  g   K  VNK  	  up# V# u upi r   )r   r	   get_outputsr=   )r   outputsrx   fs   &   r   r   install_lib.get_outputs   sO    ""..t4%%'&;w!7*:AAw;; <s   A	A)r   r   N)TTF   )__name__
__module____qualname____firstlineno____doc____annotations__r   r   r-   r=   r:   staticmethodr1   r7   r8   r   r   __static_attributes__r%   r   r   r	   r	      s_    C#
C(@6 > >D  " "(2hr   r	   )
__future__r   rB   r   	itertoolsr   r   _pathr   distr   distutils.command.install_libcommandr	   r   r%   r   r   <module>r      s1    " 	 
 &   , ,V$"" Vr   