î
É X4  ã               @   sB   d  d l  m Z d  d l Z d  d l Z Gd d „  d e ƒ Z d S)é    )Úinstall_libNc               @   sd   e  Z d  Z d d „  Z d d „  Z d d „  Z d d „  Z d	 d	 d
 d	 d d „ Z d d „  Z d S)r   c             C   s#   t  j |  ƒ d  |  _ d  |  _ d  S)N)Ú_install_libÚinitialize_optionsÚ	multiarchÚinstall_layout)Úself© r   úP/home/ubuntu/projects/ifolica/build/setuptools/setuptools/command/install_lib.pyr      s    	zinstall_lib.initialize_optionsc             C   sj   t  j |  ƒ |  j d d ƒ |  j d k rf t j d  d … d	 k rf d d  l } | j d ƒ |  _ n  d  S)
NÚinstallr   Údebé   é   r   Ú	MULTIARCH)úinstall_layoutr   )r   r   )	r   Úfinalize_optionsÚset_undefined_optionsr   ÚsysÚversion_infoÚ	sysconfigÚget_config_varr   )r   r   r   r   r	   r      s
    (zinstall_lib.finalize_optionsc             C   s6   |  j  ƒ  |  j ƒ  } | d  k	 r2 |  j | ƒ n  d  S)N)Úbuildr
   Úbyte_compile)r   Úoutfilesr   r   r	   Úrun   s    
zinstall_lib.runc             C   s°   i  } |  j  j } | o' |  j d ƒ j } | r¬ xy | D]n } | j d ƒ } xV | r¤ t j j |  j | Œ } x' d D] } d | t j j | | ƒ <qt W| j	 ƒ  qO Wq7 Wn  | S)Nr
   Ú.ú__init__.pyú__init__.pycú__init__.pyoé   )r   r   r   )
ÚdistributionZnamespace_packagesÚget_finalized_commandZ!single_version_externally_managedÚsplitÚosÚpathÚjoinÚinstall_dirÚpop)r   ÚexcludeÚnspZsvemÚpkgÚpartsZpkgdirÚfr   r   r	   Úget_exclusions   s    	zinstall_lib.get_exclusionsr   r   c                s  | r | r | s t  ‚ ˆ j ƒ  ‰  ˆ  sY d d  l } ˆ j | j _ t j ˆ | | ƒ Sd d l m	 } d d l
 m ‰ g  ‰ ˆ j rÐ d d  l }	 |	 j d ƒ ‰ d ˆ d  d	 … ˆ j ˆ d
 d  … f ‰ n  ‡  ‡ ‡ ‡ ‡ ‡ f d d †  }
 | | | |
 ƒ ˆ S)Nr   )Úunpack_directory)ÚlogÚ
EXT_SUFFIXz%s-%s%sr   c                s©   | ˆ  k r  ˆ j  d | ƒ d Sˆ j ry | j ˆ ƒ ry | j ˆ ƒ ry | j ˆ ˆ ƒ } ˆ j d t j j | ƒ ƒ n  ˆ j d |  t j j | ƒ ƒ ˆ j	 | ƒ | S)Nz/Skipping installation of %s (namespace package)Fzrenaming extension to %szcopying %s -> %s)
Úwarnr   ÚendswithÚreplaceÚinfor"   r#   ÚbasenameÚdirnameÚappend)ÚsrcÚdst)r'   Ú
ext_suffixr.   Ú
new_suffixr   r   r   r	   ÚpfB   s    (z!install_lib.copy_tree.<locals>.pféýÿÿÿr<   )ÚAssertionErrorr,   Údistutils.dir_utilr   Údir_utilÚ
_multiarchr   Ú	copy_treeZsetuptools.archive_utilr-   Ú	distutilsr.   r   r   )r   ÚinfileÚoutfileÚpreserve_modeÚpreserve_timesÚpreserve_symlinksÚlevelrB   r-   r   r;   r   )r'   r9   r.   r:   r   r   r	   rA   *   s     	-!zinstall_lib.copy_treec                s<   t  j |  ƒ } |  j ƒ  ‰  ˆ  r8 ‡  f d d †  | Dƒ S| S)Nc                s"   g  |  ] } | ˆ  k r | ‘ q Sr   r   )Ú.0r+   )r'   r   r	   ú
<listcomp>U   s   	 z+install_lib.get_outputs.<locals>.<listcomp>)r   Úget_outputsr,   )r   Úoutputsr   )r'   r	   rK   Q   s
    zinstall_lib.get_outputsN)	Ú__name__Ú
__module__Ú__qualname__r   r   r   r,   rA   rK   r   r   r   r	   r      s   	%r   )Zdistutils.command.install_libr   r   r"   r   r   r   r   r	   Ú<module>   s   