관리-도구
편집 파일: install_lib.cpython-39.pyc
a �������f#����������������������@���sH���d�dl�Z�d�dlZd�dlmZmZ�d�dlm��mZ�G�dd��dej�ZdS�)�����N)�product�starmapc�������������������@���sZ���e�Zd�ZdZdd��Zdd��Zdd��Zedd ���Zd d��Z edd ���Z ddd�Zdd��ZdS�)�install_libz9Don't add compiled flags to filenames of non-Python filesc�����������������C���s&���|������|����}|d�ur"|��|��d�S��N)Zbuild�installZbyte_compile)�self�outfiles��r ����B/usr/lib/python3.9/site-packages/setuptools/command/install_lib.py�run ���s����zinstall_lib.runc��������������������s4�����fdd�������D��}t|������}tt��j|��S�)z� Return a collections.Sized collections.Container of paths to be excluded for single_version_externally_managed installations. c�����������������3���s"���|�]}����|�D�] }|V��qqd�S�r���)� _all_packages)�.0Zns_pkg�pkg�r���r ���r ���� <genexpr>���s����z-install_lib.get_exclusions.<locals>.<genexpr>)�_get_SVEM_NSPsr����_gen_exclusion_paths�setr����_exclude_pkg_path)r���Zall_packagesZ excl_specsr ���r���r ����get_exclusions���s ���� �zinstall_lib.get_exclusionsc�����������������C���s&���|��d�|g�}tjj|�jg|�R���S�)zw Given a package name and exclusion path within that package, compute the full exclusion path. �.)�split�os�path�joinZinstall_dir)r���r���Zexclusion_path�partsr ���r ���r ���r������s����zinstall_lib._exclude_pkg_pathc�����������������c���s ���|�r|�V��|���d�\}�}}q�dS�)zn >>> list(install_lib._all_packages('foo.bar.baz')) ['foo.bar.baz', 'foo.bar', 'foo'] r���N)� rpartition)�pkg_name�sep�childr ���r ���r ���r���'���s����zinstall_lib._all_packagesc�����������������C���s,���|�j�jsg�S�|��d�}|j}|r(|�j�jS�g�S�)z� Get namespace packages (list) but only for single_version_externally_managed installations and empty otherwise. r���)ZdistributionZnamespace_packagesZget_finalized_commandZ!single_version_externally_managed)r���Zinstall_cmdZsvemr ���r ���r ���r���1���s ���� zinstall_lib._get_SVEM_NSPsc������������������c���sb���dV��dV��dV��t�td�s dS�tj�ddtjj��}�|�d�V��|�d �V��|�d �V��|�d�V��dS�)zk 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)�hasattr�sysr���r���r���r ���� cache_tag)�baser ���r ���r ���r���A���s���� � z install_lib._gen_exclusion_paths����r���c����������� ���������sh���|r|r|rJ��|���������s,tj�|�||�S�ddlm}�ddlm��g������fdd�}||||���S�)Nr���)�unpack_directory)�logc��������������������s<���|��v�r���d|��dS���d|�tj�|�����|��|S�)Nz/Skipping installation of %s (namespace package)Fzcopying %s -> %s)�warn�infor���r����dirname�append)�src�dst��excluder(���r���r ���r ����pfh���s����� z!install_lib.copy_tree.<locals>.pf)r����origr���� copy_treeZsetuptools.archive_utilr'���Z distutilsr(���) r���ZinfileZoutfileZ preserve_modeZpreserve_timesZpreserve_symlinks�levelr'���r1���r ���r/���r ���r3���W���s���� zinstall_lib.copy_treec��������������������s.���t�j�|��}|��������r*��fdd�|D��S�|S�)Nc��������������������s���g�|�]}|��vr|�qS�r ���r ���)r ����f�r0���r ���r ���� <listcomp>y��������z+install_lib.get_outputs.<locals>.<listcomp>)r2���r����get_outputsr���)r���Zoutputsr ���r6���r ���r9���u���s ����zinstall_lib.get_outputsN)r&���r&���r���r&���) �__name__� __module__�__qualname__�__doc__r���r���r����staticmethodr���r���r���r3���r9���r ���r ���r ���r ���r������s��� �� r���) r���r#���� itertoolsr���r���Zdistutils.command.install_libZcommandr���r2���r ���r ���r ���r ����<module>���s���