o
    5‘ði°  ã                   @   sX   d dl mZ d dlmZ ddlm  mZ ddlm	Z	 ddl
mZ G dd„ dejƒZdS )	é   )ÚDistribution)Únewer_pairwise_groupé    N)Úlog)ÚDistutilsSetupErrorc                   @   s$   e Zd ZU dZeed< ddd„ZdS )Ú
build_clibav  
    Override the default build_clib behaviour to do the following:

    1. Implement a rudimentary timestamp-based dependency system
       so 'compile()' doesn't run every time.
    2. Add more keys to the 'build_info' dictionary:
        * obj_deps - specify dependencies for each object compiled.
                     this should be a dictionary mapping a key
                     with the source filename to a list of
                     dependencies. Use an empty string for global
                     dependencies.
        * cflags   - specify a list of additional flags to pass to
                     the compiler.
    ÚdistributionÚreturnNc              	   C   s‚  |D ]¼\}}|  d¡}|d u st|ttfƒstd|› d�ƒ‚tt|ƒƒ}t d|¡ |  dtƒ ¡}t|tƒs>td|› d�ƒ‚g }|  dtƒ ¡}t|ttfƒsVtd|› d�ƒ‚|D ]*}|g}	|	 	|¡ |  |tƒ ¡}
t|
ttfƒsxtd|› d�ƒ‚|	 	|
¡ | 
|	¡ qX| jj|| jd�}t||ƒg g fkr²|  d	¡}|  d
¡}|  d¡}| jj|| j|||| jd� | jj||| j| jd� qd S )NÚsourcesz in 'libraries' option (library 'zD'), 'sources' must be present and must be a list of source filenameszbuilding '%s' libraryÚobj_depsz:'), 'obj_deps' must be a dictionary of type 'source: list'Ú )Ú
output_dirÚmacrosÚinclude_dirsÚcflags)r   r   r   Úextra_postargsÚdebug)r   r   )ÚgetÚ
isinstanceÚlistÚtupler   Úsortedr   ÚinfoÚdictÚextendÚappendÚcompilerÚobject_filenamesÚ
build_tempr   Úcompiler   Úcreate_static_libr   )ÚselfÚ	librariesÚlib_nameÚ
build_infor
   r   ÚdependenciesÚglobal_depsÚsourceÚsrc_depsÚ
extra_depsÚexpected_objectsr   r   r   © r+   ú\/root/parts/websockify/install/lib/python3.10/site-packages/setuptools/command/build_clib.pyÚbuild_libraries   sb   

ÿ

ÿ
ÿ

ÿ
þ


úÿ·zbuild_clib.build_libraries)r	   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ú__annotations__r-   r+   r+   r+   r,   r   	   s   
 r   )Údistr   Úmodifiedr   Údistutils.command.build_clibÚcommandr   ÚorigÚ	distutilsr   Údistutils.errorsr   r+   r+   r+   r,   Ú<module>   s    