???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................3

  \)                 @   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o,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jt|}d	| }tj| 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.6/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   s4    













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}zhg }x\|j }	|	d krfP |j	|	rrqT|	d |	d#   kodkn  r|j
d|	  qT||	|}	||	}
|
d }t|g }d }x|
dd  D ]}|d k	r|j| d }qtjj|d }|dd	 }|d	d  }|d$kr8|jj| q|dkrP|jj| q|dkr|jd}|d%kr|jj|d f n$|jj|d| ||d	 d  f q|dkr|jj| q|dkr|jj| q|dkr|jj| q|dkr|jj| q|dkr|jj| q|dkr0|j}q|dkrB|j}q|dkrT|j}q|dkrx|jj| |s|j}q|d&kr|jj| q|j
d"|  qW |j| qTW W d |j  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   .c.cc.cpp.cxx.c++.m.mmz-Iz-D=z-Uz-Cz-lz-Lz-Rz-rpathz-Xlinkerz
-Xcompilerz-u.a.so.sl.o.dylibzunrecognized argument '%s')r6   r7   r8   r9   r:   r;   r<   rC   )r>   r?   r@   rA   rB   )Zdistutils.sysconfigr.   r/   r0   Zdistutils.text_filer1   Zdistutils.utilr2   readlinematchr#   r   appendospathsplitextr   r   findr   r   r   r   r   r   r   r   close)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    

 


 















rT   )rG   r"   r   rT   r   r   r   r   <module>   s   z