
    ?e
                     8    d dl Z d dlmZmZ  G d d          ZdS )    N)copy2copytreec                   0    e Zd ZdZdddZd ZdddZdS )	Installableze Encapsulate a list of files and directories that will be installed into
    a target directory.
    N)target_subdirc                0    || _         || _        g | _        dS )a	   Initialise the installable.  The optional target_subdir is the
        path of a sub-directory of the eventual target where the files will be
        installed.  If target_subdir is an absolute pathname then it is used as
        the eventual target name.
        N)namer   files)selfr	   r   s      4lib/python3.11/site-packages/sipbuild/installable.py__init__zInstallable.__init__!   s     	*


    c                     | j         rQt          j                            | j                   r| j         }n%t          j                            || j                   }|S )z( Return the full target directory name. )r   ospathisabsjoin)r   
target_dirs     r   get_full_target_dirzInstallable.get_full_target_dir,   sR      	Jw}}T/00 J!/

W\\*d6HII
r   T)
do_installc                   |                      |          }|rt          j        |d           | j        D ]}t          j                            |t          j                            |                    }|                    |           |r9t          j                            |          rt          nt          } |||           dS )zr Optionally install the files in a target directory and update the
        given list of installed files.
        T)exist_okN)r   r   makedirsr
   r   r   basenameappendisdirr   r   )r   r   	installedr   fnt_pathcopy_fns          r   installzInstallable.install7   s    
 --j99
 	3K
T2222* 	$ 	$BW\\*bg.>.>r.B.BCCFV$$$ $&(gmmB&7&7B((UF###	$ 	$r   )__name__
__module____qualname____doc__r   r   r!    r   r   r   r      sj          /3 	 	 	 	 		 	 	 <@ $ $ $ $ $ $ $r   r   )r   shutilr   r   r   r&   r   r   <module>r(      sZ   0 
			 " " " " " " " "+$ +$ +$ +$ +$ +$ +$ +$ +$ +$r   