Your IP : 216.73.216.213


Current Path : /opt/alt/python35/lib64/python3.5/site-packages/pyximport/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/site-packages/pyximport/__pycache__/pyxbuild.cpython-35.pyc



Z��ZF�@s�dZddlZddlZddlmZmZmZddlmZddl	m
Z
yddlmZ
dZWnek
r�dZYnXdZiadddddddd	d
�Zedkr�ed�d
dlmZdS)z�Build a Pyrex file from .pyx source to .so loadable module using
the installed distutils infrastructure. Call:

out_fname = pyx_to_dll("foo.pyx")
�N)�DistutilsArgError�DistutilsError�CCompilerError)�	Extension)�grok_environment_error)�
old_build_extTFc$CsFtjj|�s.tdtjj|���tjjtjj|��\}}	|s�tjj|	�\}
}|d!ks�t|��ts�|dt|��d}t	d|
d|g�}|dkr�i}|s�tjj
|d�}|}xR|jjd	�d"dd#�D]1}
tjj|�\}}||
krd}PqW|jdg�}t
smd
|krvd
}nd}|dg}|r�|jd�|r|r|jd|g�|jdks�|jjd�rt|d�s�ddi|_nd|jkrd|jd<tr1|r1|jd�|j�}|jddd||i�ddlm}||�}|js�g|_|jj|�tr�dti|_|jd�}||_|j�}|j|�y|j�}Wntk
r�YnXt
r t d�|j!�|s,t�y�|jd�}|j"�|j#�d}|j$r�tjj
tjj%|�tjj&|��}|r�|}tjj'|�}t(j|d$�\}}}||kr�|}n�tjj&|�}x�|dkr�|d7}tjj
|j)|d|�} yaddl*}!y#tjj+| �rXtj,| �Wnt-k
rpw�YnX|!j.|| �| }Wnt/k
r�w�YnXPq�Wt0d|��|||ft(|<|SWnrt1k
r�t2j3d�YnTt/tj4fk
rAt2j5�d}"t6|"�}#t
r:t2j7j8|#d ��YnXdS)%zUCompile a PYX file to a DLL and return the name of the generated .so
       or .dll .zCould not find %s�.pyx�.pyNz.c�name�sourcesZ_pyxbld�.���script_argsz	--verbosez--quiet�	build_extz--forcez--build-lib�__init__z	.__init__�cython_directivesZset_initial_pathZ
SOURCEFILEz--pyrex-c-in-temp�script_namer)�Distribution�buildz%options (after parsing command line):�dz	.reload%sz#reload count for %s reached maximum�
)rr	������)NNr)9�os�path�exists�AssertionError�abspath�split�splitext�
HAS_CYTHON�lenr�joinr
�get�DEBUG�append�extend�endswith�hasattrr�copy�update�distutils.distr�ext_modulesr�cmdclass�get_command_obj�
build_base�find_config_files�parse_config_files�parse_command_liner�print�dump_option_dicts�run_commands�get_outputs�inplace�dirname�basename�getmtime�_reloads�	build_lib�shutil�isfile�unlink�OSError�copy2�IOError�ImportError�KeyboardInterrupt�sys�exit�error�exc_infor�stderr�write)$�filename�extZ
force_rebuildZ
build_in_tempZpyxbuild_dir�
setup_argsZreload_supportr8rr
�modname�	extensionZpackage_base_dir�package_nameZpnamer�quiet�argsZsargsr�distrZcfgfiles�okZ
obj_build_extZso_pathZorg_path�	timestampZlast_timestampZ	last_path�countr:Zr_pathr>�excrH�rY�E/opt/alt/python35/lib64/python3.5/site-packages/pyximport/pyxbuild.py�
pyx_to_dlls�.$&	
!

			




		




r[�__main__z	dummy.pyxr)�test)�__doc__rrF�distutils.errorsrrr�distutils.extensionr�distutils.utilrZCython.Distutils.old_build_extrrr!rDr%r<r[�__name__�r]rYrYrYrZ�<module>s"

�