a
    ³ÐOc   ã                   @   sœ  d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlm	Z	 zd dl
Z
W n eyf   dZ
Y n0 ejjdkrxdZ
zFejdd��&Ze dde¡ d dlZW d  ƒ n1 s²0    Y  W n eyÔ   dZY n0 zd dlZd dlmZ W n e�y   dZY n,0 d d	lmZ d
Ze e¡e e¡k �r2dZejjedu dd�ejjdd„ ƒƒZejjedu �ple
du dd�dd„ ƒZ ejje
du dd�dd„ ƒZ!dS )é    N)Úexec_mod_from_locationé   T)ÚrecordÚalwaysÚ )Úversion)Ú_pep440z0.29.30zrequires cython)Úreasonc                 C   s   t j t j t¡d¡}t || d ¡ | d d d }tjt	j
ddddt| d	 ƒd
dt| d ƒg	t|ƒd� t|d ƒ�D}d}t|ƒD ]\}}||v r† q®q†ds®J d |¡ƒ‚W d   ƒ n1 sÂ0    Y  d  }}t| d ƒ�:}|D ]$}d|v rú| ¡ }d|v ræ| ¡ }qæW d   ƒ n1 �s"0    Y  |d u�s:J ‚|d u�sHJ ‚td|ƒ td|ƒ}	ddlm}
 |	 |
dƒdd¡}|jdk�sŠJ ‚|jtjk�sœJ ‚d S )Nz..ÚrandomZ	_examplesÚcythonzsetup.pyÚbuildÚinstallz--prefixZ
installdirz#--single-version-externally-managedz--recordztmp_install_log.txt)Úcwdzextending.cz0NumPy API declarations from "numpy/__init__.pxd"Fz-Could not find '{}' in C file, wrong pxd usedz
extending.Úextending_distributionsÚ	extendingr   )ÚPCG64é
   Úd)r   )ÚosÚpathÚjoinÚdirnameÚ__file__ÚshutilÚcopytreeÚ
subprocessÚ
check_callÚsysÚ
executableÚstrÚopenÚ	enumerateÚformatÚstripr   Znumpy.randomr   Zuniforms_exÚshapeZdtypeÚnpÚfloat64)Ztmp_pathÚsrcdirÚ	build_dirZfidZtxt_to_findÚiÚlineZso1Zso2r   r   Úvalues© r,   úX/var/www/html/gsl.tools/lib/python3.9/site-packages/numpy/random/tests/test_extending.pyÚtest_cython,   sF    ýû	
ÿ$*
ÿr.   zrequires numba and cffic                  C   s   ddl m}  d S ©Nr   ©r   )Znumpy.random._examples.numbar   r0   r,   r,   r-   Ú
test_numbaX   s    r1   zrequires cffic                  C   s   ddl m}  d S r/   )Znumpy.random._examples.cffir   r0   r,   r,   r-   Ú	test_cffi]   s    r2   )"r   Zpytestr   r   r   ÚwarningsÚnumpyr%   Znumpy.distutils.misc_utilr   ZcffiÚImportErrorÚflagsÚoptimizeÚcatch_warningsÚwÚfilterwarningsÚDeprecationWarningZnumbar   ZCython.Compiler.Versionr   Zcython_versionZnumpy.compatr   Zrequired_versionÚparseÚVersionÚmarkZskipifZslowr.   r1   r2   r,   r,   r,   r-   Ú<module>   sJ   
*

*ÿ
