???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................U
    e5d)                     @   s*   d dl Z d dlZG dd dZdd ZdS )    Nc                   @   s   e Zd ZdddZdd ZdS )	ExtensionNc                 K   s  t |tstdt |tr.tdd |D s6td|| _|| _|pHg | _|pRg | _|p\g | _	|pfg | _
|ppg | _|pzg | _|	pg | _|
pg | _|pg | _|pg | _|pg | _|pg | _|| _|| _t|dkrdd |D }dt|}d	| }t| d S )
Nz'name' must be a stringc                 s   s   | ]}t |tV  qd S )N)
isinstancestr).0v r   +/usr/lib64/python3.8/distutils/extension.py	<genexpr>j   s     z%Extension.__init__.<locals>.<genexpr>z#'sources' must be a list of stringsr   c                 S   s   g | ]}t |qS r   )repr)r   Zoptionr   r   r   
<listcomp>   s     z&Extension.__init__.<locals>.<listcomp>z, zUnknown Extension options: %s)r   r   AssertionErrorlistallnamesourcesinclude_dirsdefine_macrosundef_macroslibrary_dirs	librariesruntime_library_dirsextra_objectsextra_compile_argsextra_link_argsexport_symbols	swig_optsdependslanguageoptionallenjoinsortedwarningswarn)selfr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   kwZoptionsmsgr   r   r   __init__V   s6    













zExtension.__init__c                 C   s   d| j j| j j| jt| f S )Nz<%s.%s(%r) at %#x>)	__class__
__module____qualname__r   id)r$   r   r   r   __repr__   s    zExtension.__repr__)NNNNNNNNNNNNNN)__name__r)   r*   r'   r,   r   r   r   r   r      s    D              
/r   c                 C   s  ddl m}m}m} ddlm} ddlm} || }|| dddddd}z^g }|	 }	|	d krdq|
|	rpqP|	d |	d   krdkrn n|d	|	  qP||	|}	||	}
|
d }t|g }d }|
dd  D ]}|d k	r|| d }qtj|d }|dd
 }|d
d  }|dkr2|j| q|dkrJ|j| q|dkr|d}|dkrz|j|d f n$|j|d| ||d
 d  f q|dkr|j| q|dkr|j| q|dkr|j| q|dkr |j| q|dkr|j| q|dkr*|j}q|dkr<|j}q|dkrN|j}q|dkrr|j| |s|j}q|dkr|j| q|d|  q|| qPW 5 |  X |S )Nr   )parse_makefileexpand_makefile_vars_variable_rx)TextFile)split_quoted   )Zstrip_commentsZskip_blanksZ
join_linesZ	lstrip_wsZ	rstrip_ws*z'%s' lines not handled yet   )z.cz.ccz.cppz.cxxz.c++z.mz.mmz-Iz-D=z-Uz-Cz-lz-Lz-Rz-rpathz-Xlinkerz
-Xcompilerz-u)z.az.soz.slz.oz.dylibzunrecognized argument '%s')Zdistutils.sysconfigr.   r/   r0   Zdistutils.text_filer1   Zdistutils.utilr2   closereadlinematchr#   r   appendospathsplitextr   r   findr   r   r   r   r   r   r   r   )filenamer.   r/   r0   r1   r2   varsfile
extensionslineZwordsmoduleZextZappend_next_wordZwordsuffixZswitchvalueZequalsr   r   r   read_setup_file   s       
 


 















rH   )r<   r"   r   rH   r   r   r   r   <module>   s   z