o
    Td                     @   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   e/home/ncw/WWW/www-new/content/articles/pi-bbp/venv/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                    sn   |d u rt  }nt|tr|g}nt|}g }|D ] t } 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   9   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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    

