관리-도구
편집 파일: glibc.cpython-38.pyc
U ʗRe& � @ sp d dl Z d dlZd dlmZmZ ee d�dd�Zee d�dd�Zee d�dd �Zeeef d�d d�Z dS )� N)�Optional�Tuple)�returnc C s t � p t� S )z9Returns glibc version string, or None if not using glibc.)�glibc_version_string_confstr�glibc_version_string_ctypes� r r ��/builddir/build/BUILDROOT/alt-python38-pip-22.2.1-2.el8.x86_64/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/utils/glibc.py�glibc_version_string s r c C sF t jdkrdS zt�d��� \} }W n tttfk r@ Y dS X |S )z@Primary implementation of glibc_version_string using os.confstr.�win32N�CS_GNU_LIBC_VERSION)�sys�platform�os�confstr�split�AttributeError�OSError� ValueError)�_�versionr r r r s r c C sv zddl } W n tk r" Y dS X | �d�}z |j}W n tk rN Y dS X | j|_|� }t|t�sr|� d�}|S )z=Fallback implementation of glibc_version_string using ctypes.r N�ascii) �ctypes�ImportError�CDLL�gnu_get_libc_versionr �c_char_p�restype� isinstance�str�decode)r �process_namespacer �version_strr r r r 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"