o
    ۾i8                     @   sP   d dl Z d dlZd dlZdd Zdddddddd	Zd
ZdddZdddZdS )    Nc                  C   s6   t jdkrdtjddg} ndg} dd | D }|S )z
    Anaconda specific
    win32DLLsLibrarybinlibc                 S   s   g | ]
}t jtj|qS  )ospathjoinsysprefix).0xr   r   F/home/ubuntu/.local/lib/python3.10/site-packages/numba/misc/findlib.py
<listcomp>       z get_lib_dirs.<locals>.<listcomp>)r   platformr   r	   r
   )dirnameslibdirsr   r   r   get_lib_dirs   s
   
r   zlib%(name)s\.so\.%(ver)s$zlib%(name)s\.a$zlib%(name)s\.%(ver)s\.dylib$z%(name)s%(ver)s\.dll$z%(name)s\.lib$)linuxlinux2zlinux-staticdarwinr   zwin32-staticbsdz[0-9]*([_\.][0-9]+)*Fc                 C   sZ   |pt j}d|v rdn|}|r| d}|tvrg S t| | td }t|}t||S )Nr   z-static)namever)r   r   
DLLNAMEMAPRE_VERrecompile	find_file)libnamelibdirr   staticpatregexr   r   r   find_lib!   s   



r&   c              	      s   |d u rt  }nt|tr|g}nt|}g }|D ]' zt }W n	 ty+   Y qw  fdd|D }|dd |D  q|S )Nc                    s$   g | ]} |rtj |qS r   )matchr   r	   r
   )r   entldirr$   r   r   r   <   s    
zfind_file.<locals>.<listcomp>c                 S   s   g | ]
}t j|r|qS r   )r   r	   isfile)r   cr   r   r   r   >   r   )r   
isinstancestrlistr   listdirFileNotFoundErrorextend)r$   r"   r   filesentries
candidatesr   r)   r   r    /   s"   
r    )NNF)N)r   r   r   r   r   r   r&   r    r   r   r   r   <module>   s    

