Your IP : 18.119.109.60
U
�QabJ � @ sH d dl mZ d dlZd dlZd dlZdd� Zdd� Zdd� Zd d
� ZdS )� )�absolute_importNc C sR t �d�} z
| j}W n tk
r* Y dS X t j|_|� }t|t�sN|�d�}|S )z9Returns glibc version string, or None if not using glibc.N�ascii) �ctypesZCDLL�gnu_get_libc_version�AttributeErrorZc_char_pZrestype�
isinstance�str�decode)Zprocess_namespacer �version_str� r �4/usr/lib/python3.8/site-packages/setuptools/glibc.py�glibc_version_string
s
r
c C sH t �d| �}|s$t�d| t� dS t|�d��|koFt|�d��|kS )Nz$(?P<major>[0-9]+)\.(?P<minor>[0-9]+)z=Expected glibc version with 2 components major.minor, got: %sF�major�minor)�re�match�warnings�warn�RuntimeWarning�int�group)r
�required_major�
minimum_minor�mr r r �check_glibc_version$ s ���r c C s t � }|d krdS t|| |�S )NF)r
r )r r r
r r r �have_compatible_glibc4 s r c C s t � } | dkrdS d| fS dS )z�Try to determine the glibc version
Returns a tuple of strings (lib, version) which default to empty strings
in case the lookup fails.
N)� r Zglibc)r
)Z
glibc_versionr r r �libc_verL s r ) Z
__future__r r r r r
r r r r r r r �<module> s