o
    Gg	                     @   st   d dl mZ ddlmZmZ ddlmZ ddlmZ ddl	m
Z
 ddlZddlZddlZddlZG dd	 d	eZdS )
   )Backend    )setup	Extension)get_info)dict_append)VisibleDeprecationWarningNc                       s$   e Zd Z fddZdd Z  ZS )DistutilsBackendc                    s&   t jdtdd t j|i | d S )Nz
distutils has been deprecated since NumPy 1.26.x
Use the Meson backend instead, or generate wrappers without -c and use a custom build script   )
stacklevel)warningswarnr   super__init__)Zsefargskwargs	__class__ `C:\Users\micha\Documents\internet-seite\env\Lib\site-packages\numpy/f2py/_backends/_distutils.pyr      s   zDistutilsBackend.__init__c              
   C   sB  i }|r| j |dg  | j| j| j | j| j| j| j| j	| j
d	}| jrB| jD ]}t|}|s9td|d t|fi | q)tdi |}tjd g| j t_tjdd| jd| jd	d
dg | jrptjdg| j  | jr}tjdg| j  t|gd | jrtj| jrtd| j  t| j d S d S d S )Ninclude_dirs)	namesourcesr   library_dirs	librariesdefine_macrosundef_macrosextra_objectsZf2py_optionszNo z2 resources foundin system (try `f2py --help-link`)r   buildz--build-tempz--build-basez--build-platlib.z--disable-optimizationZ	config_fc	build_ext)ext_moduleszRemoving build directory r   )r   extendget
modulenamer   r   r   r   r   r   Z
f2py_flagsZsysinfo_flagsr   printr   r   sysargvZsetup_flags	build_dirZfc_flagsZ
flib_flagsr   Zremove_build_dirospathexistsshutilrmtree)selfZnum_infoZext_argsniextr   r   r   compile   sV   

zDistutilsBackend.compile)__name__
__module____qualname__r   r2   __classcell__r   r   r   r   r	      s    
r	   )Z_backendr   Znumpy.distutils.corer   r   Znumpy.distutils.system_infor   Znumpy.distutils.misc_utilr   Znumpy.exceptionsr   r)   r&   r,   r   r	   r   r   r   r   <module>   s    