Your IP : 18.119.114.74


Current Path : /lib64/python3.6/distutils/__pycache__/
Upload File :
Current File : //lib64/python3.6/distutils/__pycache__/extension.cpython-36.opt-2.pyc

3


 \)�@s*ddlZddlZGdd�d�Zdd�ZdS)�Nc@seZdZddd�Zdd�ZdS)�	ExtensionNcKst|t�std��t|t�o,tdd�|D��s6td��||_||_|pHg|_|pRg|_|p\g|_	|pfg|_
|ppg|_|pzg|_|	p�g|_
|
p�g|_|p�g|_|p�g|_|
p�g|_|p�g|_||_||_t|�dk�rdd�|D�}djt|��}d	|}tj|�dS)
Nz'name' must be a stringcss|]}t|t�VqdS)N)�
isinstance�str)�.0�v�r�+/usr/lib64/python3.6/distutils/extension.py�	<genexpr>jsz%Extension.__init__.<locals>.<genexpr>z#'sources' must be a list of stringsrcSsg|]}t|��qSr)�repr)rZoptionrrr�
<listcomp>�sz&Extension.__init__.<locals>.<listcomp>z, zUnknown Extension options: %s)rr�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)�selfrrrrrrrrrrrrrrrr�kwZoptions�msgrrr�__init__Vs4













zExtension.__init__cCsd|jj|jj|jt|�fS)Nz<%s.%s(%r) at %#x>)�	__class__�
__module__�__qualname__r�id)r$rrr�__repr__�s
zExtension.__repr__)NNNNNNNNNNNNNN)�__name__r)r*r'r,rrrrrsD
!rcCs�ddlm}m}m}ddlm}ddlm}||�}||dddddd�}�zhg}�x\|j�}	|	dkrfP|j	|	�rrqT|	d|	d#ko�dknr�|j
d|	�qT||	|�}	||	�}
|
d}t|g�}d}
�x�|
dd�D�]�}|
dk	r�|
j|�d}
q�t
jj|�d}|dd	�}|d	d�}|d$k�r8|jj|�q�|dk�rP|jj|�q�|dk�r�|jd�}|d%k�r�|jj|df�n$|jj|d|�||d	d�f�q�|dk�r�|jj|�q�|dk�r�|jj|�q�|dk�r�|jj|�q�|dk�r|jj|�q�|dk�r|jj|�q�|dk�r0|j}
q�|dk�rB|j}
q�|dk�rT|j}
q�|dk�rx|jj|�|�s�|j}
q�|d&k�r�|jj|�q�|j
d"|�q�W|j|�qTWWd|j�X|S)'Nr)�parse_makefile�expand_makefile_vars�_variable_rx)�TextFile)�split_quoted�)Zstrip_commentsZskip_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�.dylibzunrecognized argument '%s'���)r6r7r8r9r:r;r<rC)r>r?r@rArB)Zdistutils.sysconfigr.r/r0Zdistutils.text_filer1Zdistutils.utilr2�readline�matchr#r�append�os�path�splitextrr�findrrrrrrrr�close)�filenamer.r/r0r1r2�vars�file�
extensions�lineZwords�moduleZextZappend_next_wordZword�suffixZswitch�valueZequalsrrr�read_setup_file�s�

 


















rT)rGr"rrTrrrr�<module>sz