Ë
    ›2ÚiZ  ã                   ó.  — d Z ddlZddlZddlZddlmZ ddlZddlZddl	m
Z
 d„ Zej                  j                  ddd	gd
dg«      ej                  j                  d¬«      d„ «       «       Zd„ Zd„ Zej                  j                  dddg«      d„ «       Zy)z0See https://github.com/numpy/numpy/pull/11937.

é    N)Úimport_moduleé   )Úutilc                  óª   — t        j                  «       st        j                  d«       t        j                  «       st        j                  d«       y y )NzNeeds C compilerzNeeds FORTRAN 77 compiler)r   Úhas_c_compilerÚpytestÚskipÚhas_f77_compiler© ó    ú]/var/www/html/acx/venv/lib/python3.12/site-packages/numpy/f2py/tests/test_compile_function.pyÚsetup_moduler      s9   € Ü×ÑÔ Ü�‰Ð&Ô'Ü× Ñ Ô"Ü�‰Ð/Õ0ð #r   Ú
extra_argsz--nooptz--debugz--noopt --debugÚ z$Imported module seems never deleted.)Úreasonc                 óF  — d}t        j                  «       }t        j                  «       }t        j                  «       }t        j
                  j                  |t        t        j                  «       «      dz   «      }|d fD ]K  }t        j                  |«      5  t        j                  j                  ||| |¬«      }|dk(  sJ ‚	 d d d «       ŒM t        j                  dk7  r4t!        |«      }|j#                  «       }	|	dk(  sJ ‚t        j$                  |= y y # 1 sw Y   ŒŸxY w)NzT
        integer function foo()
        foo = 10 + 5
        return
        end
    z.f)Ú
modulenamer   Ú	source_fnr   Úwin32é   )r   Úget_module_dirÚget_temp_module_nameÚosÚgetcwdÚpathÚjoinÚstrÚuuidÚuuid4Ú	switchdirÚnumpyÚf2pyÚcompileÚsysÚplatformr   ÚfooÚmodules)
r   ÚfsourceÚmoddirÚmodnameÚcwdÚtargetr   Úret_valÚreturn_checkÚcalc_results
             r   Útest_f2py_init_compiler0      s  € ð€Gô × Ñ Ó"€FÜ×'Ñ'Ó)€Gä
�)‰)‹+€CÜ�W‰W�\‰\˜&¤#¤d§j¡j£lÓ"3°dÑ":Ó;€Fð ˜d�^ò  ˆ	ô
 �^‰^˜FÓ#ñ 	 Ü—j‘j×(Ñ(¨Ø4;Ø4>Ø3<ð )ó >ˆGð ˜a’<Ð‘<÷	 ð 	 ð ô" ‡|�|�wÒô % WÓ-ˆØ"×&Ñ&Ó(ˆØ˜bÒ Ð Ð ô �K‰K˜Ñ ð ÷	 ð 	 ús   Â+DÄD 	c                  óP   — t         j                  j                  d«      } | dk(  sJ ‚y )Nó   invalidr   )r!   r"   r#   )r-   s    r   Útest_f2py_init_compile_failurer3   O   s$   € ô �j‰j× Ñ  Ó,€GØ�aŠ<Ð‰<r   c                  óÀ   — 	 t         j                  } dt         _        t        j                  j	                  d«      }|dk(  sJ ‚	 | t         _        y #  t         _        w xY w)Nzdoes not existr2   é   )r$   Ú
executabler!   r"   r#   )Útempr-   s     r   Útest_f2py_init_compile_bad_cmdr8   V   sH   € ðÜ�~‰~ˆØ)ŒŒô —*‘*×$Ñ$ ZÓ0ˆØ˜#Š~Ð‰~àŒ�ø˜Œ�ús   ‚AA ÁAr(   z'program test_f2py
end program test_f2pys'   program test_f2py
end program test_f2pyc                 ó¬   — t        j                  | «      5  t        j                  j	                  |dd¬«      }|dk(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)NÚtest_compile_from_stringsz.f90)r   Ú	extensionr   )r   r    r!   r"   r#   )Útmpdirr(   r-   s      r   r:   r:   h   sT   € ô 
�‰˜Ó	ñ Ü—*‘*×$Ñ$ WØ0KØ/5ð %ó 7ˆð ˜!Š|Ð‰|÷	÷ ñ ús   –*A
Á
A)Ú__doc__r$   r   r   Ú	importlibr   r   Ú
numpy.f2pyr!   r   r   r   ÚmarkÚparametrizeÚleaks_referencesr0   r3   r8   r:   r   r   r   ú<module>rC      sµ   ðñó Û 	Û Ý #Û ã å ò1ð ‡�×Ñ˜Ø$ iÐ0Ð2CÀRÐHóJà‡�×ÑÐ%KÐÓLñ1!ó MóJð1!òhòð$ ‡�×ÑØà2Ø3ðóñóñr   