σ οRec@@sddlmZddlZddlZddlmZerWddlmZmZnd„Z d„Z d„Z d„Z dS( i(tabsolute_importN(tMYPY_CHECK_RUNNING(tOptionaltTuplecC@stƒptƒS(s9Returns glibc version string, or None if not using glibc.(tglibc_version_string_confstrtglibc_version_string_ctypes(((sˆ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/utils/glibc.pytglibc_version_stringscC@sTtjdkrdSytjdƒjƒ\}}Wntttfk rOdSX|S(s@Primary implementation of glibc_version_string using os.confstr.twin32tCS_GNU_LIBC_VERSIONN( tsystplatformtNonetostconfstrtsplittAttributeErrortOSErrort ValueError(t_tversion((sˆ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/utils/glibc.pyRscC@syddl}Wntk r$dSX|jdƒ}y |j}Wntk rUdSX|j|_|ƒ}t|t ƒsŒ|j dƒ}n|S(s=Fallback implementation of glibc_version_string using ctypes.iNtascii( tctypest ImportErrorR tCDLLtgnu_get_libc_versionRtc_char_ptrestypet isinstancetstrtdecode(Rtprocess_namespaceRt version_str((sˆ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/utils/glibc.pyR's     cC@s'tƒ}|dkrdSd|fSdS(s“Try to determine the glibc version Returns a tuple of strings (lib, version) which default to empty strings in case the lookup fails. ttglibcN(R R (RR (t glibc_version((sˆ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/utils/glibc.pytlibc_verWs  ( t __future__RR R tpip._internal.utils.typingRttypingRRRRRR#(((sˆ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/utils/glibc.pyts     0