Your IP : 18.191.233.198


Current Path : /opt/alt/python39/lib64/python3.9/distutils/__pycache__/
Upload File :
Current File : //opt/alt/python39/lib64/python3.9/distutils/__pycache__/dir_util.cpython-39.opt-2.pyc

a

R�fb�@slddlZddlZddlmZmZddlmZiaddd�Zddd	�Z	dd
d�Z
dd
�Zddd�Zdd�Z
dS)�N)�DistutilsFileError�DistutilsInternalError)�log��cCsht|t�std|f��tj�|�}g}tj�|�s<|dkr@|St�tj�	|��rV|Stj�
|�\}}|g}|r�|r�tj�|�s�tj�
|�\}}|�d|�ql|D]�}tj�||�}tj�	|�}	t�|	�r�q�|dkr�t
�d|�|�sZzt�||�WnXt�yN}
z>|
jtjk�r$tj�|��s:td||
jdf��WYd}
~
n
d}
~
00|�|�dt|	<q�|S)Nz(mkpath: 'name' must be a string (got %r)�rrzcreating %szcould not create '%s': %s���)�
isinstance�strr�os�path�normpath�isdir�
_path_created�get�abspath�split�insert�joinr�info�mkdir�OSError�errnoZEEXISTr�args�append)�name�mode�verbose�dry_runZcreated_dirs�head�tailZtails�dZabs_head�exc�r#�7/opt/alt/python39/lib64/python3.9/distutils/dir_util.py�mkpathsB
�
�

r%c	CsNt�}|D] }|�tj�|tj�|���q
t|�D]}t||||d�q4dS)N�rr)�set�addrrr�dirname�sortedr%)Zbase_dir�filesrrrZneed_dir�file�dirr#r#r$�create_treePs
r.c
Csbddlm}|s(tj�|�s(td|��zt�|�}	Wn@tyv}
z(|rPg}	ntd||
jf��WYd}
~
n
d}
~
00|s�t	||d�g}|	D]�}tj�
||�}
tj�
||�}|�d�r�q�|�rtj�|
��rt�
|
�}|dkr�t�d||�|�st�||�|�|�q�tj�|
��r<|�t|
|||||||d	��q�||
||||||d	�|�|�q�|S)
Nr)�	copy_filez&cannot copy tree '%s': not a directoryzerror listing files in '%s': %s)rz.nfsrzlinking %s -> %sr&)Zdistutils.file_utilr/rrrr�listdirr�strerrorr%r�
startswith�islink�readlinkrr�symlinkr�extend�	copy_tree)�srcZdstZ
preserve_modeZpreserve_timesZpreserve_symlinks�updaterrr/�names�eZoutputs�nZsrc_nameZdst_nameZ	link_destr#r#r$r7csR��

���r7cCsft�|�D]F}tj�||�}tj�|�r@tj�|�s@t||�q
|�tj|f�q
|�tj	|f�dS)N)
rr0rrrr3�_build_cmdtupler�remove�rmdir)r�	cmdtuples�fZreal_fr#r#r$r=�sr=cCs�|dkrt�d|�|rdSg}t||�|D]j}z2|d|d�tj�|d�}|tvrbt|=Wq.ty�}zt�d||�WYd}~q.d}~00q.dS)Nrz'removing '%s' (and everything under it)rzerror removing %s: %s)	rrr=rrrrr�warn)Z	directoryrrr@�cmdrr"r#r#r$�remove_tree�s

rDcCs6tj�|�\}}|dd�tjkr2||dd�}|S)Nrr)rr�
splitdrive�sep)rZdriver#r#r$�ensure_relative�srG)rrr)rrr)rrrrrr)rr)rrZdistutils.errorsrrZ	distutilsrrr%r.r7r=rDrGr#r#r#r$�<module>s
?
�
E



?>