???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................3
ÝPf{  ã               @   sP   d dl mZ d dlZd dlZd dlZd dlZdd„ Zdd„ Zdd„ Zd	d
„ Z	dS )é    )Úabsolute_importNc              C   sP   t jdƒ} y
| j}W n tk
r(   dS X t j|_|ƒ }t|tƒsL|jdƒ}|S )z9Returns glibc version string, or None if not using glibc.NÚascii)	ÚctypesZCDLLÚgnu_get_libc_versionÚAttributeErrorZc_char_pZrestypeÚ
isinstanceÚstrÚdecode)Zprocess_namespacer   Úversion_str© r   ú/usr/lib/python3.6/glibc.pyÚglibc_version_string	   s    



r   c             C   sH   t jd| ƒ}|s$tjd|  tƒ dS t|jdƒƒ|koFt|jdƒƒ|kS )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 krdS t|| |ƒS )NF)r   r   )r   r   r
   r   r   r   Úhave_compatible_glibc3   s    r   c              C   s"   t ƒ } | d krtjƒ S d| fS d S )NZglibc)r   ÚplatformÚlibc_ver)Zglibc_versionr   r   r   r   K   s    r   )
Z
__future__r   r   r   r   r   r   r   r   r   r   r   r   r   Ú<module>   s   